表的操作DDL

发布于:2024-11-28 ⋅ 阅读:(12) ⋅ 点赞:(0)

创建表

  1. character set 字符集 collate 校验规则 engine 存储引擎;
  2. 属性要用 ‘,’ 隔开,最后一个属性不加 ‘,’ ,不要忘了括号
  3. 其中charset = utf8 collate utf8_general_ci engine MyIsam;可以不写
create database usr_db;
use usr_db;
//创建表 user1
create table if not exists user1(
	id int,
	name varchar(20) comment '用户名',
	password char(32) comment '用户的密码',
	brithday date comment '用户的生日'
)charset = utf8 collate = utf8_general_ci engine = MyIsam;
  1. 两种方式选择一种即可
  2. 一般选择带‘=’的形式
mysql> create table if not exists user2(
    ->  id int,
    ->  name varchar(20) comment '用户名',
    ->  password char(32) comment '用户的密码',
    ->  brithday date comment '用户的生日'
    ->   )character set utf8 collate utf8_general_ci engine InnoDB;

不同的存储引擎,创建表的文件不一样

查看表

  1. 查看当前在哪改数据库:select database();
  2. 查看数据库中有哪些表: show tables;
  3. 查看表的详细信息: desc user1;

在这里插入图片描述
在这里插入图片描述

  1. 显示创建use1表时的详细信息: show create table user1;
    但是一般选用格式化方便观看 show create table user1 \G;

在这里插入图片描述

修改表 alter

修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型,表的存储引擎,添加字段,删除字段等等。

  1. 对表进行重命名: alter table user1 rename to user;
    其中的 to 可以省略
  2. 向表插入元素:
insert into user values (1,'燕知春','12345','2000-10-01');
insert into user values (2,'齐夏','34512','1998-11-11');
  1. 增加一列并指定放在birthday的后面:
alter table user add image_path varchar(128) comment '这个是用户的头像路径' after brithday;

在这里插入图片描述

  1. 对某一列的属性进行修改:修改name,将其长度改成60
alter table user modify name varchar(60);
  1. 每次修改后都可通过以下语句进行查看是否修改正确
desc user;
select * from user;
show create table user;

在这里插入图片描述

与之前相比少了comment,说明modify是直接覆盖

  1. 删除一列: alter table user drop password;
    注意:删除列要小心,因为这一列的所以数据都会被删除
  2. 改列名不仅需要给出列的名称,相关属性也要写上
alter table user change name xingming varchar(60);
  1. 删除表:drop table user;

建议:

一般不要删除和修改表结构