mysq_查看表结构(查看表结构的sql语句)

学习目标

  • 掌握MySQL服务中字段的操作方法,能够完成字段的添加,修改和删除。

DDL之表结构操作(字段操作)

在实际开发中,我们创建的数据库一般只满足第一版需求,随着日后的需求不断增加,数据维度不断扩展,还有更多的需求需要添加进来,此时,数据存储的结构就需要随之变化。

为了使MySQL更加灵活,可扩展性更强,在MySQL语法中给我们添加了操作表结构(字段)的相关方法。

在MySQL中,修改表结构(字段)时,我们需要借助ALTER TABLE关键字来完成。

在操作字段之前,我们需要将刚才删除掉的表重新创建回来。

CREATE TABLE category(
    # 字段1名称为cid,数据类型为整型,添加主键约束及非空约束
    cid INT PRIMARY KEY NOT NULL,
    # 字段2名称为cname,数据类型为varchar,最大长度为100
    cname VARCHAR(100)
);

注意:无法操作不存在的表。

1.添加字段

1.1 添加字段的方法

添加字段的方式非常简单,只要在ALTER TABLE的基础上,添加ADD关键字就可以完成,语法格式如下:

ALTER  TABLE  表名  ADD  列名  类型(长度)  [约束];

注意:约束按需求选择添加,可以没有约束,类型必须填写,并只能填写一个类型

例如:

# 在category表中添加num字段,数据类型为INT,并且不能为空
ALTER TABLE category ADD num INT NOT NULL;
# 查看表结构是否发生了改变
DESC category;
mysq_查看表结构(查看表结构的sql语句)插图

我们可以在添加字段后,使用DESC category;命令查看表结构是否发生了改变。

1.2 字段名称不能重复

注意:==字段名称不能重复==,所以,当我们再次添加num字段时将会报错,错误信息为:Duplicate column name ‘num’。

mysq_查看表结构(查看表结构的sql语句)插图1

1.3 关键字做字段名称

当我们添加的字段名称为关键字时,会出现错误,我们试着执行如下代码:

# 在category表中添加desc字段,数据类型为VARCHAR类型,最大长度为100
ALTER TABLE category ADD desc VARCHAR(100);
mysq_查看表结构(查看表结构的sql语句)插图2

此时已经提示我们语法错误,因为desc为关键字,系统已经赋予了他特殊的功能。

此处,我们没有使用他原有的功能,系统认为我们书写的SQL语句语法格式存在问题。

那我们需要怎么做呢???

很简答我们给desc添加“让系统知道他不是一个关键字即可,代码如下:

# 在category表中添加desc字段,数据类型为VARCHAR类型,最大长度为100
ALTER TABLE category ADD `desc` VARCHAR(100);
# 查看表结构是否发生了改变
DESC category;
mysq_查看表结构(查看表结构的sql语句)插图3

?

注意:这里添加的点是esc键下方的点,要使用英文输入法哦!

mysq_查看表结构(查看表结构的sql语句)插图4

?

2.修改字段

修改字段的方式与添加字段类似,只不过需要将ADD关键字改为CHANGE关键字,代码如下:guan

ALTER TABLE 表名 CHANGE 旧列名 新列名 类型(长度) 约束;

例如:

# 为分类表的desc字段更换为description  varchar(100)
ALTER TABLE category CHANGE `desc` description VARCHAR(100);
# 查看表结构
DESC category;

运行后,字段名称已经发生改变,我们可以使用DESC进行表结构查看。

mysq_查看表结构(查看表结构的sql语句)插图5

?

3.删除字段

删除字段的方式与添加字段类似,只不过需要将ADD关键字改为DROP关键字,代码如下:

ALTER TABLE 表名 DROP 列名;

注意:此处不用指定数据类型及约束。

例如:

# 删除分类表中num这列
ALTER TABLE category DROP num;
# 删除后,查看表结构
DESC category;

删除后,使用DESC查看表中的字段是否删除成功。

mysq_查看表结构(查看表结构的sql语句)插图6

?

4.小结

  • 添加字段:ALTER TABLE 表名 ADD 列名 类型(长度) [约束];
  • 修改字段:ALTER TABLE 表名 CHANGE 旧列名 新列名 类型(长度) 约束;
  • 删除字段:ALTER TABLE 表名 DROP 列名;
**本论坛部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本论坛仅供提供学习交流和参考,禁止用户用于商业行为,并请于下载后24小时内删除,若喜欢该作品请联系原作者购买正版。如果您发现论坛上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。
158自学网 » mysq_查看表结构(查看表结构的sql语句)
关于售后:
(1)、因部分资料含有敏感关键词,百度网盘无法分享链接,请联系客服进行发送;
(2)、所有资料在您未收到之前,都可以联系微信/QQ:406499404,无条件退款
(3)仅支持原渠道退回,微信支付,支付宝退回至您当初选择的付款方式
(4)不用担心不给资料,如果没有及时回复也不用担心,看到了都会发给您的,请放心!
(5)因部份资源来源互联网,本站不担保其完整性,请知悉!

发表评论

Hi, 如果你对本资源有疑问,可以跟我联系哦!

联系作者

提供最优质的资源集合

立即查看 了解详情
赞助VIP 享更多特权,建议使用 QQ 登录
喜欢我嘛?关注我们的公众号吧!♡