首先要进入数据库USE name,再创建数据表
或者使用数据库.数据表的方式创建
1.创建数据表
CREATE TABLE [IF NOT EXISTS] 表名(
字段1, 数据类型 [约束条件] [默认值],# 数据类型有INT,VERCHAR(30),CHAR,DATETIME等等
字段2, 数据类型 [约束条件] [默认值],#约束条件,比如指定为主键:PRIMARY KEY,例如设置为非空:NOT NULL;例如可设置字段的默认值:
DEFAULT 默认值;AUTO_INCREMENT主键值自动递增1;
字段3, 数据类型 [约束条件] [默认值],
…….
#也可以在这约束主键:PRIMARY KEY(name)
# PRIMARY KEY[字段1,字段2,...]
# 指定外键
[CONSTRAINT 外键名] FOREIGN KEY 字段1 [, 字段2, 字段3, …] REFERENCES 主表名 主键列1 [, 主键列2,
主键列3, …]
主表名是指该外键在作为主键时所在的表名,主键列同理;
[表约束条件]
)[......];
表名称在Windows操作系统上不区分大小写,在Linux操作系统上区分大小写。
[......]处可添加:
a.创建表时可为表指定相应的存储引擎:ENGINE=存储引擎名称
b.DEFAULT CHARACTER SET 编码 COLLATE 校对规则
2.查看数据表的结构
DESCRIBE/DESC 表名,返回字段的含义:
Field:数据表中的每个字段。
Type:数据表中字段的数据类型。
Null:数据表中的当前字段值是否可以为NULL。
Key:数据表中的当前字段是否存在索引。PRI表示当前列是主键列,或者是主键的一部分;UNI表示当前列是UNIQUE标识的唯一索引列,或者是唯一索引列的一部分;MUL表示在当前列中的某个值可以出现多次。
Default:表示当前列是否有默认值,同时会显示当前列的默认值是多少。
Extra:表示与当前列相关的附件信息。
SHOW CREATE TABLE 表名 \G
【\G可以使输出信息更加美观,便于查看和阅读】
3.修改数据表
ALTER TABLE 原表名 RENAME [TO] 新表名
4.添加字段(新列)
ALTER TABLE 表名 ADD COLUMN 新字段名 数据类型 [NOT NULL DEFAULT 默认值]
添加字段时可以指定位置:在上述命令后面 FIRST则为在第一列添加字段;AFTER 原有字段名则为在该字段后面添加字段;
5.修改字段名
ALTER TABLE 表名 CHANGE 原字段名 新字段名 新数据类型#数据类型不能为空
6.修改字段的数据类型
ALTER TABLE 表名 MODIFY 字段名 新数据类型
补充:修改表的存储引擎:ALTER TABLE 表名 ENGINE=存储引擎名称
7.修改字段的位置
ALTER TABLE 表名 MODIFY 字段名 数据类型 位置
8.删除字段
ALTER TABLE 表名 DROP 字段名
补充:取消数据表的外键约束:ALTER TABLE 表名 DROP FOREIGN KEY 外键名
9.删除数据表
常见:DROP TABLE [IF EXISTS] 数据表1,数据表2...
但是如果某表的主键作为另外一个表的外键,则可以先删除另外一个表,再删除这个表;也可以先解除外键约束,再删除表;