MYSQL表操作
MySQL是一种开源的关系型数据库管理系统(RDBMS),被广泛应用于Web应用程序开发中。MySQL最初由瑞典公司MySQL AB开发,并由Oracle公司维护和支持。MySQL使用SQL语言进行数据管理和查询操作。
创建表
create table 表名(
字段1 字段1类型,
字段2 字段2类型,
字段3 字段3类型,
...
字段n 字段n类型
);
创建表的语法中每个字段以 , 分隔,但最后一个字段后面没有逗号 创建表或字段的语句后可以使用 comment 注释 语句添加注释,如以上语法可以写为:
create table 表名(
字段1 字段1类型 [comment 字段1注释],
字段2 字段2类型 [comment 字段2注释]
)[comment 表注释];
查询当前数据库所有表
show tables;
查询表结构
describe 表名;
或
desc 表名;
查询指定表的建表语句
show create table 表名;
这里的表是指已经建好的表,使用 show create table 表名; 语句可以查看创建该表的过程
修改表名
alter table 表名 rename to 新表名
删除表
drop table [if exists] 表名;
删除表并重新创建该表
truncate table 表名;
添加字段
alter table 表名 add 字段名 数据类型(数据长度) [comment 注释];
如,在 testtable 表中添加 testfield 字段,数据类型为 varchar(20):
alter table testtable ADD testfield varchar(20) comment '注释';
删除字段
alter table 表名 drop 字段名;
修改字段数据类型
alter table 表名 modify 字段名 新数据类型(数据长度);
修改字段名和字段数据类型
alter table 表名 change 旧字段名 新字段名 数据类型(数据长度) [comment 注释];
如,将 testtable 表的 testfield 字段名修改为 testfield01,类型为 varchar(30) :
alter table testtable change testfield testfield01 varchar(30) comment '昵称';
MYSQL约束
为防止错误的数据被插入到数据表,MySQL中定义了一些维护数据库完整性的规则,针对表中字段进行限制从而保证数据表中数据的正确性和唯一性,这些规则常称为表的约束,也即表的约束实际上就是表中数据的限制条件。常见约束如下:
约束条件 说明
PRIMARY KEY 主键约束用于唯一标识对应的记录
FOREIGN KEY 外键约束
NOT NULL 非空约束
UNIQUE 唯一性约束
DEFAULT 默认值约束,用于设置字段的默认值CREATE TABLE 表名 (
字段名 字段类型,
字段名 字段类型 列级约束,
表级约束
);
MySQL中的约束分为为列级约束和表级约束,其中:
列级约束:NOT NULL、DEFAULT、PRIMARY KEY、UNIQUE、CHECK
表级约束:PRIMARY KEY、UNIQUE、CHECK、FOREIGN KEY
列级约束和表级约束在添加位置上也有所不同:
列约束:在 字段名 数据类型 后面追加约束
表约束:在各个列字段的最下面,以CONSTRAINT 开头添加约束
添加外键
创建表前添加外键
CONSTRAINT [fk_table_field] FOREIGN (外键字段) REFERENCES 主表名(主键字段)
创建表后添加外键
ALTER TABLE 从表名
ADD CONSTRAINT [fk_table_field] FOREIGN (外键字段) REFERENCES 主表名(主键字段)
在实际开发中,只需要在逻辑上的主外键关系,不需要设置!!!
这些操作是MySQL表操作的基础,在实际开发中会根据需求进行更复杂的表操作,如索引创建、数据插入、数据查询等。