数据表是建立在数据库中的数据结构,是一类数据的存储集
- 创建表
create table [if not exists] `表的名字`(
id int not null auto_increment primary key comment '主键',
account char(255) comment '用户名' default 'admin',
pwd text(16383) comment '密码' not null
)charset=utf8mb4;
eg. 创建公司员工表:
create table staff(
id int primary key auto_increment,
name varchar(128),
number varchar(128),
department varchar(128)
age int,
gender varchar(8))charset=utf8mb4;
— staff:表的名字;
— ():括号里的内容为表的首行字段,创建表时必须添加;
—id:用于唯一标识表中的每条记录(row)。这个字段通常被设置为主键(PRIMARY KEY),以确保数据的唯一性和完整性。以下是关于MySQL数据表中id
字段的一些常见特点:
- 唯一性:
id
字段的值在表中是唯一的,没有两条记录可以拥有相同的id
值 - 自增:在很多情况下,
id
字段被设置为自增(AUTO_INCREMENT),这意味着每当插入一条新记录时,id
的值会自动递增 - 索引:
id
字段通常被索引,这可以加快基于id
的查询速度 - 主键:
id
字段经常被设置为主键,主键是表中一个或多个字段的组合,用于唯一标识表中的每一行 - 类型:
id
字段通常使用整数类型,如INT
或BIGINT
,这取决于预期的记录数量和需求
- 查看表的结构
desc <tablename>;
describe <tablename>;
- 查看建表语句
show create table <tablename>;
- 修改表的名称
alter table <tablename> rename <newname>;
- 移动表
alter table <tablename> rename to <dbname.newtblename>
- 删除表
drop table <tablename>
- 修改表的字段
---增加一个新的字段
alter table `表名` add `字段名` 数据类型[属性];
---增加一个新的字段并将其放在首位
alter table `表名` add `字段名` 数据类型[属性] first;
---增加一个新在字段,并将其放在某一字段之后
alter table `表名` add `字段名` 数据类型[属性] after 指定字段;
---修改字段属性
alter table `表名` modify `字段名` 数据类型[属性];
---修改字段的名称,change既能修改字段名称,也能修改属性
alter table `表名` change `原字段名` `新的字段名` 数据类型[属性];
---修改字段的位置
alter table `表名` change `原字段名` `新的字段名` 数据类型 after `指定字段`;
---删除字段
alter table `表名` drop `字段名`;
-
复制表格
8.1 方法一:创建一个新表,并将原表的数据全部复制到新表中
create table <新表名称> select * from <原表名>
- 能复制原表中的数据,但字段的属性不能被复制
- 能复制原表中的数据,但字段的属性不能被复制
8.2 方法二,分为两步:
- 创建一个新表,并复制原表的字段及属性
create table <新表的名称> like <原表名>
- 往新表中插入数据
insert into <新表的名称> select * from <原表名>