MySQL的表的创建
表的创建
- 使用数据库:USE 数据库名;
- 创建表:create table[if not exists] table_name(column_name, data_type,...)
- 查看全部数据表:show tables
- 查看表数据结构:desc tb_name;
- 插入记录:insert into tb_name[(col_name,...)] values(Vals,...);
- 查找记录:select expo from tb_name;
- 自动编号:AUTO_INCREMENT 必须和主键一起使用
表的约束
- 目的:保证数据的完整性和一致性。
- 分类:分为表级约束和列级约束
- 主键约束:保证记录唯一性,自动为not null primary key
- 外键约束:
- 条件:
- 父表和子表必须使用相同的存储引擎,且必须为InnoDB。
- 外键列与参照列具有相似的数据结构
- 外键列和参照列必须创建索引,但系统自动创建了
- 查询存储引擎:show create table tb_name;
- 显示索引:show indexes from tb_name;
- 命令:foreign key(**) references tb_name(**)
- 参照操作
- CASCADE:级联删除
- SET NULL:父表删除或更新,子表外键值设置为null
- RESTRICT:拒绝父表删除和更新
- NO ACTION:不做任何操作
- 非空约束:not null 字段值禁止为空
- 唯一约束:unique key 可以为空值
- 默认约束:default value 设置默认值
表的修改
- 单列列的增加:alter table tb_name add column col_name col_definition[first|after col_name];
- 单列列的删除:alter table tb_name drop column col_name
- 约束的添加:alter table tb_name add constraint xxxx(col_name)
- 删除主键约束:alter table tb_name drop primary key;
- 删除外键约束:alter table tb_name drop foreign key fore_key;
- 删除唯一约束:alter table tb_name drop index key_name;
- 默认约束的修改:alter table tb_name alter column col_name set default xxx;
- 修改列定义:alter table tb_name modify xxx;
- 修改表名:
- alter table tb_name rename xxx;
- rename table tb_name to xxx;
表的插入
- 插入记录:insert into tb_name[(col_name,...)] {value(exp)};
- 设置插入:insert into tb_name set col_name={expr},...;
- 子查询:insert into tb_name[(col_name,...)] select ...;
表的更新
- 单表更新:update table_name set col_name={expr},.. where condition;
表的删除
- 单表删除:delete from tb_name [where condition];
posted @
2019-05-20 10:45
まだまだだわ
阅读(
131)
评论()
编辑
收藏
举报