MySQL表的操作

目录

创建表

 创建表案例

 查看表结构

 修改表

修改表名

修改列

 删除表

创建表

语法:


说明:
field 表示列名
datatype 表示列的类型
character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准

collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准

 创建表案例

 两个不同的存储引擎
CREATE TABLE test (
    ->     id INT,
    ->     name VARCHAR(20) COMMENT '用户名',
    ->     password CHAR(32) COMMENT '密码是32位的md5值',
    ->     birthday DATE COMMENT '生日'
    -> ) CHARACTER SET utf8 ENGINE MyISAM;

CREATE TABLE test2 (
    id INT,
    name VARCHAR(20) COMMENT '用户名',
    password CHAR(32) COMMENT '密码是32位的md5值',
    birthday DATE COMMENT '生日'
) CHARACTER SET utf8 ENGINE InnoDB;

comment是描述信息的,大小写都行

 说明:不同的存储引擎,创建表的文件不一样。

test表存储引擎是MyISAM ,在数据目中有三个不同的文件,分别是:test.frm test.MYD test.MYI

                                                                                                      表结构    表数据     表索引

而test2表存储引擎是 InnoDB,他的数据和索引在一个文件里,所以有两个文件

 查看表结构

desc 表名;   查看一个表的详细信息


 show create table test;显示建表时的详细信息

建议使用 show create table test  \G

\G是将不需要的信息过滤掉

 修改表

在项目实际开发中,经常修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型, 表的存储引擎等等。我们还有需求,添加字段,删除字段等等。这时我们就需要修改表。改表后数据库的表会变同时相应的数据库文件也会变

修改表名

alter table x rename to xx;//注意to可以省略

修改列

alter table意思是要改表了

插入信息:
insert into test1 values(1,'张三','12345','1982-01-04');

insert into test1 values(2,'李四','54321','1983-01-04');

 插入新字段列:
alter table test1 add image_path varchar(128) comment '这个是用户的头像路径' after birthday;

新建一列并且在birthday后面


插入新字段后对原来的数据没影响

 修改字段列数据类型大小:

alter table test1 modify name varchar(60);



但是查看后发现:原本的comment描述信息不见了。说明是覆盖的改动

 删除列:

alter table test1 drop password;删除password列



删除字段一定要小心,删除字段及其对应的列数据都没了

 改列名称:

alter table test1 change name xingming varchar(60) DEFAULT NULL;

alter table test1 change xingming  name varchar(60) ;

不只是改名字同时相应的信息也要改

单纯改名字不对,要带上字段类型。

DEFAULT NULL是由show create table test1 \G;得来的是数据库优化来得,带不带都行。

 删除表

drop table test1;

总之不要轻易修改和删除因为关联很多东西 ,轻易修改会导致改动很多东西。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

wangsir.

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值