数据库之表管理

208 阅读2分钟

修改表名和表结构

修改表名和表结构都用alter语句

修改表名

ALTER TABLE 旧表名 RENAME 新表名  

image.png

扩展表结构(add)

ALTER TABLE 表名 ADD 字段名 数据类型;

image.png

image.png

修改字段名(change)

CHANGE可修改字段名、数据类型、约束等所有项。

ALTER TABLE 表名 CHANGE 旧字段名 新字段名 [数据类型] [约束];

image.png

删除字段(drop)

ALTER TABLE 表名 DROP 字段名;

image.png

添加主键约束

  1. 方法一:创建表时设置主键
  • create table 表名(字段1 XXX, 字段2 XXX, ....primary key(字段));
  1. 方法二:在现有表中添加主键
  • ALTER TABLE 表名 add primary key(字段名)

主键和唯一键的区别;

image.png

表的进阶操作

克隆表

  1. 方法一:先克隆表结构,再导入表数据
  • create table 新表名 like 旧表名;   #通过LIKE方法,复制旧表的结构生成新表
  • insert into 新表名 select * from 旧表名;   #再将旧表数据导入新表

image.png

image.png

  1. 方法二;创建新表的同时导入旧数据
  • create table 新表名 (select * from 旧表名);

image.png

查看表结构

  1. 方法一
  • desc 表

image.png 2. 方法二

  • show create table 表

image.png

清空表,删除数据

  • delete from 表

image.png

  • truncate table 表;

image.png

注;DELETE清空表后,返回的结果内有删除的记录条目;  DELETE 工作时是一行一行的删除记录数据的,删除时速度较慢;  如果表中有自增长字段,使用"DELETE FROM"删除所有记录后,新添加的记录会从原来最大的记录ID后面继续自增写入记录, TRUNCATE清空表后,没有返回被删除的条目。 TRUNCATE 工作时是将表结构按原样重新建立,因此在速度方面 TRUNCATE 会比DELETE清空表快。 使用TRUNCATE TABLE清空表内数据后,ID会从1开始重新记录。