MySQL数据表操作

数据表

数据表在数据库中用于存储数据,表名要求是唯一的,不允许包含特殊字符。

查看数据库中的所有数据表

SHOW [FULL] TABLES [{FROM|IN} db_name] [LIKE 'pattern' | WHERE expr];

可以使用like或者where条件限制查询结果

在这里插入图片描述

创建数据表

CREATE TABLE [IF NOT EXISTS] tbl_name (字段名称 字段属性 [完整性约束条件], ...) ENGINE=存储引擎 CHARSET=编码方式

约束条件:

  1. UNSIGNED:无符号位,长度从0开始
  2. ZEROFILL:填充0,当数据的显示长度不足时,会在字段值前补充0,同时字段会自动添加UNSIGNED
  3. NOT NULL:非空约束,插入数据不允许为空
  4. DEFAULT:默认值,如果插入记录为空时会按照默认值插入
  5. PRIMARY KEY:主键约束,记录标识的唯一性,值不能重复,一个表只能存在一个主键,作为主键的字段不能为空
  6. AUTO_INCREMENT:自增长,只能用于数值类型的字段,配合索引使用。起始默认值为1,每次增长1
  7. UNIQUE KEY:唯一约束,可以由多个字段组成,作为唯一索引的字段不能重复,NULL除外
  8. FOREIGN KEY:外检约束
CREATE TABLE IF NOT EXISTS tb_employee (
    no TINYINT AUTO_INCREMENT KEY,
    id VARCHAR(4) NOT NULL UNIQUE KEY,
    name VARCHAR(4) NOT NULL UNIQUE KEY,
    age INT NOT NULL DEFAULT 18,
    salary INT,
    department VARCHAR(100)
) ENGINE = innoDB, DEFAULT CHARSET = utf8;

除了正常用CREATE语句设置字段建表以外还可以复制其他表的表结构。例如

CREATE TABLE tb_employee1 LIKE tb_employee;

则会创建一张与tb_employee结构相同的空表tb_employee1

查看建表语句

SHOW CREATE TABLE tbl_name;

在这里插入图片描述

查看表结构

DESC|DESCRIBE tbl_name;
SHOW COLUMNS FROM tbl_name;

在这里插入图片描述

字段名描述
Field字段描述
Type字段类型即范围
Null是否为空值
Key主键约束/唯一约束/外键
Default默认值
Extra其他约束

删除数据表

DROP TABLE tbl_name;

表结构操作

添加、删除字段

ALTER TABLE tbl_name 
ADD (字段名称 字段属性 [约束条件] [FIRST|AFTER 字段名称], ...);

MySQL可以在添加字段时选择添加的位置

在这里插入图片描述

ALTER TABLE tbl_name DROP 字段名;

添加、删除默认值

ALTER TABLE tbl_name ALTER 字段名 SET DEFAULT 默认值;
ALTER TABLE tbl_name ALTER 字段名 DROP DEFAULT;

在这里插入图片描述

修改字段名称、字段类型、字段属性、约束条件

-- 修改字段属性
ALTER TABLE tbl_name MODIFY 字段名 字段类型 字段属性 [约束条件];

在这里插入图片描述

-- 修改字段名称
ALTER TABLE tbl_name CHANGE 原字段名 新字段名 字段类型 字段属性 [约束条件];

在这里插入图片描述

修改属性的同时也能移动字段的位置,可以添加AFTER 字段名移动位置
如果只修改字段的类型,字段的属性和约束条件也要写在语句中,否则会将其他属性也修改

例如:将age字段放到department字段后面,如果只写ALTER TABLE tb_employees MODIFY age int AFTER department;则效果如下图
在这里插入图片描述
age字段的默认值和是否为空属性也会被删掉。

增加、删除主键

ALTER TABLE tbl_name ADD PRIMARY KEY (字段名);
ALTER TABLE tbl_name DROP PRIMARY KEY;

在这里插入图片描述
对于存在的AUTO_INCREMENT,需要先将该属性删除才能删除主键

增加、删除唯一索引

ALTER TABLE tbl_name ADD UNIQUE KEY|INDEX [IDX_NAME] (COLUMN,...);
ALTER TABLE tbl_name DROP UNIQUE IDX_NAME;

在添加唯一索引时若不指定索引名称,会按字段名称命名索引

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

如果没有主键,唯一索引则会作为主键存在

修改数据表名

ALTER TABLE tbl_name 
RENAME [TO|AS] new_tbl_name

RENAME TABLE tbl_name TO new_tbl_name;

在这里插入图片描述

修改AUTO_INCREMENT的值

ALTER TABLE tbl_name AUTO_INCREMENT=
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL数据表的基本操作包括创建数据表、插入数据、查询数据、更新数据和删除数据。创建数据表时,需要指定表名和字段名,并为每个字段指定数据类型和约束条件。可以使用CREATE TABLE语句来创建数据表。插入数据时,使用INSERT INTO语句,指定要插入的数据和表名。查询数据可以使用SELECT语句,可以指定查询条件和排序规则。更新数据可以使用UPDATE语句,根据指定的条件更新字段的数值。删除数据可以使用DELETE FROM语句,根据指定的条件删除数据行。这些基本操作可以帮助用户在MySQL数据库中进行数据管理和交互,是数据库操作的基础知识。 另外,MySQL数据表的基本操作还包括对表结构的修改和索引的创建。可以使用ALTER TABLE语句对表结构进行修改,包括添加、修改和删除字段等操作。创建索引可以加快数据的检索速度,可以使用CREATE INDEX语句来创建索引。除此之外,还可以使用DESCRIBE语句来查看数据表的结构,使用SHOW TABLES语句来查看数据库中的数据表列表。这些操作可以帮助用户更好地管理和维护MySQL数据库中的数据表。 总之,对于MySQL数据表的基本操作,包括创建数据表、插入数据、查询数据、更新数据、删除数据、修改表结构和创建索引等操作,是数据库管理和交互的基础,对于数据库开发和管理都是非常重要的知识点。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值