MySQL: 自动添加约束、更改(删除)表名和字段、删除表

目录

自动添加表的属性:

向表内插入数据:

查看表中的数据:

查看表结构:

查看表的详细结构:

更改表名和字段:

更改表名:

更改字段数据类型:

修改字段名:

 添加字段:

删除字段:

 修改字段排列位置:

更改储存引擎:

删除表的外键约束:

删除表:


前言:自学记录。

自动添加表的属性:

这里应该接入笔者写的上一篇的内容,会更好一些。

MySQL:创建数据库,数据表,主键和外键_豆包的戳苏的博客-CSDN博客

自动添加的字段可以是任何整数类型。

(语句中包含CONTRAINT 就是约束语句。)

 选择数据库,在库中建立一个新的数据表 tb6

在表中添加相关的字段,将 id 设置为 主键,并设置成 自动约束。

自动约束可以自动生成数据,如果了解过python中第三方库pandas的话,可以参考里面的DataFrame 或  中的 index,因为 index 是自动生成的。

向表内插入数据:

INSERT INTO <表名称> (<字段1>, <字段2>);

# 括号内部可以添加多个字段,如果字段设置为“NOT NULL”,就必须添加;如果没有“非空约束”,就可以不用添加。同时注意“唯一约束”。

查看表中的数据:

SELECT * FROM <表名称>;

继续按这个方式插入:

证明该语句可以查看完整的表格,而不是只显示插入的部分。

这里插播一条:

查看表结构:

DESCRIBE <表名称>; 或 DESC <表名称>;

查看表的详细结构:

SHOW CREATE TABLE <表名称>;

 从中我们可以知道:id 数据类型为INT,每一条不可为空,自动填充;name  字符串->utf8mb4;deptID 数据类型为整数型,默认为空,salary同之;主键为id;引擎为InnoDB;自动填充了7个内容(包括最开头的一行)

DEFAULT 指的是默认约束,这里面默认的是NULL。

做了一个小测试,又插入了两行数据,这回再看看:

这里的AUTO_INCREMENT 是 9,但是我插入了8个数据,算上字段行,一共生成了9行。 

更改表名和字段:

更改表名:

ALTER TABLE <旧名字> RENAME <新名字>;

# 书上教材的写法是在RENAME 后面加了一个 [TO],我这里删掉了,是为了能够更好的理解。

# 更改表名 和 更改字段名称一定要区别开来! 

 最后通过查看全部表名进行检验。

更改字段数据类型:

这个句法和更改表名的类似,所以放在一起说了。

ALTER TABLE <表名> MODIFY <字段> <新数据类型>;

依然是tb11作为例子,查看最初的数据类型:

 接下来进行修改:将name字段的数据类型改为int

ALTER TABLE <> MODIFY <> <>;

显示表格信息,进行查看:

 将name字段的int类型更改回varvhar(25):

ALTER TABLE <> MODIFY <> <>;

如果不清楚数据类型,可以在修改的最初,展示一下表格中的各字段细节。

修改字段名:

# 数据库中含有数据的时候,不要轻易更改数据类型。

ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新字段数据类型>;

 添加字段:

ALTER TABLE <表名> ADD <新字段> <新字段数据类型> [FIRST/AFTER <这部分可有可无,如果没有则放在所有字段最末尾,如果是FIRST则放在开头,如果想要放在指定位置,则用AFTER,你想要放在哪个字段后面,AFTER后面就写哪个字段的名称>];

 加上AFTER 参数:

# 当然可以发现,数据类型这里,不区分大小写。

删除字段:

ALTER TABLE <表名> DROP <字段名>;

 修改字段排列位置:

ALTER TABLE <表名> MODIFY <字段名> <字段数据类型> [FIRST/AFTER] <如果使用AFTER,排列在哪个字段后面,就写哪个字段的名称,FIRST就不需要了>

把school字段放在 id 的后面。

 把NAME 放在第一个后,再放到最后一个

放到最后一个依然应用AFTER 

更改储存引擎:

ALTER TABLE <表名> ENGINE=<更改后的引擎> ;


 
删除表的外键约束:

ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>;

以上是我创建的带有外键约束的表,现在删除外键:

# 注意外键名称!是:fk_emp_tb3, 不是 septID(这个是字段)

 

删除表:

DROP TABLE IF EXISTS <表名>;

# 如果存在外键,父表无法直接删除,必须取消外键约束,才能进行删除!!!


 以上,就是数据表的基本操作,复盘:

首先学习了自动添加表格属性,这个直接在创建表格,设置字段的时候进行标注:AUTO_INCREMENT

查看表结构 DESCRIBE 简写为DESC

查看详细内容: SHOW CREATE TABLE <表名>;

修改表名: ALTER TABLE <旧表名> RENAME <新表名>;

修改表内字段数据类型: ALTER TABLE <表名> MODIFY <字段名> <新数据类型>;

修改表内字段名: ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新字段数据类型>;

添加字段:ALTER TABLE <表名> ADD <字段名> [FIRST/LATER<>];

删除字段:ALTER TABLE <表名> DROP <字段名>;

改变字段位置:ALTER TABLE <表名> MODIFY <字段> FIRST/AFTER <字段>;

删除外键约束:ALTER TABLE <表名> DROP FOREIGN KEY <外键>;

删除表:DROP TABLE IF EXISTS <表名(可以是多个)>;

# 前提是不能删除带有外键约束的父表,必须取消约束才能删除!


日拱一卒,功不唐捐。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值