五、更改数据表

一般表格创建好以后,很可能需要修改和表相关的内容。如修改表名,修改列名,类型,增加列等等。

删除列,ALTER TABLE  表名 DROP 列名;

ALTER TABLE student DROP `name`;

这样就删除了表中name那一列。

增加列,增加时可以指定列名,和字符类型和列的位置顺序,这是类型等等。

ALTER TABLE student add `name` varchar(200) FIRST;

ALTER TABLE student add `name` varchar(200) AFTER id;


alter TABLE student add COLUMN aname varchar(111) NOT NULL DEFAULT '' COMMENT '姓名';

修改列属性名字,并重新修改类型,而且类型必须是和原来类型不同,否则SQL语句会报错。

alter TABLE student change COLUMN `aname` `sex` char;

修改列字段的类型:

alter TABLE student MODIFY COLUMN `sex` varchar(100) DEFAULT NULL COMMENT '性别';

如果原来的字段里有NULL值,且将属性改为NOT NULL,会报一个 Invalid use of NULL value的错误,这里主要是原来的空值,已经没办法自动转为非空了,所以先将空值手动改为非空字符,或者之间删掉重建一列。

修改字段的默认值:

alter TABLE student ALTER COLUMN `sex` set DEFAULT '男';

 

其余的还有修改表的类型和表的名字。表的类型一般指的就是数据表的引擎类型了,这个再上一章说过了,具体修改语句为:

ALTER TABLE student ENGINE = MYISAM;

修改表名:

 ALTER TABLE student RENAME st;

修改表的注释:

ALTER TABLE st COMMENT '学生信息表';

也可以修改表的编码格式,如果在一开始创建时,忘记使用utf8格式,那可以使用如下语句修改表的字符格式。这里的COLLATE指的是每种字符编码格式下的排序方式,utf8_general_ci指的是一种一般排序方法。

ALTER TABLE st CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci

Note:
ci是 case insensitive, 即 "大小写不敏感", a 和 A 会在字符判断中会被当做一样的。

 

经过这几篇的文章的编写,楼主对数据表的认识加深了不少。

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zanglengyu

敲碗要饭

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值