Back to VNotes

Database / SQL

MySQL 与 SQL 基础(二)

记录 MySQL 启动方式、SQL 分类、DDL、DML、DQL、DCL 和表结构操作。

查询

查询所有数据库

SHOW DATABASES;

查询当前数据库

SELECT DATABASE();

创建

创建数据库

CREATE DATABASE [IF NOT EXISTS] 名称 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];

中括号内的内容都是可以省略的参数,且实际使用时无需加上中括号,若加上IF NOT EXISTS,当名称已存在时则不会执行本语句

字符集不建议用使用3个字节储存字符的utf8,而是使用支持4个字节的utf8mb4

删除

删除数据库

DROP DATABASE [IF EXISTS] 数据库名称;

使用

使用数据库

USE 数据库名称;

表操作

查询

查询当前数据库所有表

SHOW TABLES;

查询表结构

DESC 表名;

desc即描述,但只能看到字段,看不到注释

查询指定表的建表语句

SHOW CREATE TABLE 表名;

相当于查询建表时所使用的语句,可以看到各种信息,细节比DESC更全

创建

创建表

CREATE TABLE 表名(
		字段1 字段1类型 [COMMENT 字段1注释],
		字段2 字段2类型 [COMMENT 字段2注释],
		...
		字段n 字段n类型 [COMMENT 字段n注释]
)[COMMENT 表注释];

注释使用单引号 ‘ ’ 括起来

使用的表名不能是mysql的关键字,若想使用关键字做表名,要用反括号 `` 括起来

修改

添加字段

ALTER TABLE 表名 ADD 字段名 类型(长度) [COMMENT 注释] [约束];

修改字段数据类型

ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);

修改字段名和字段数据类型

ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];

删除字段

ALTER TABLE 表名 DROP 字段名;

修改表名

ALTER TABLE 表名 RENAME TO 新表名;

移动字段到首位

ALTER TABLE 表名 MODIFY 字段名 字段类型 FIRST;

移动字段到指定字段的后面

ALTER TABLE 表名 MODIFY 字段名 字段类型 AFTER 目标位置字段名;

删除

删除表

DROP TABLE [IF EXISTS] 表名;

删除表,并重新创建该表(效果等于清空数据,但表结构不变)

TRUNCATE TABLE 表名;