数据库总结-03 Mysql数据库 表结构的操作语句

1. 建表

我们先创建一个表,方便后续操作

USE test2;
DROP TABLE IF EXISTS test01;

CREATE TABLE test01(
id INT PRIMARY KEY AUTO_INCREMENT,
num INT,
username CHAR(8)
)ENGINE=INNODB CHARACTER SET=UTF8;   -- 可在此设置 AUTO_INCREMENT=指定值

2. 数据库下表的查用操作

2.1 查看表结构、删除表等

-- 查看当前数据库下的数据表
SHOW TABLES;

-- 查看某数据库下的数据表
SHOW TABLES FROM test2;
SHOW TABLES IN test2;

-- 查看指定数据表详细信息
SHOW CREATE TABLE test01;

-- 查看表结构
DESC test01;
SHOW COLUMNS FROM test01;

-- 删除数据表
DROP TABLE IF EXISTS test01;

2.2 表的重命名

-- 修改表名(TO 和 AS 是一样的)
ALTER TABLE test01
RENAME TO test001;
SHOW TABLES;
ALTER TABLE test001
RENAME TO test01;
SHOW TABLES;

3. 表的字段操作

3.1 添加和删除字段

-- 添加字段,添加到num字段之后(AFTER),注意,虽然有after,但是没有before
ALTER TABLE test01 
ADD tel CHAR(11) NOT NULL AFTER num;

-- 添加字段到首位(FIRST)
ALTER TABLE test01 
ADD tel CHAR(11) NOT NULL FIRST;

-- 删除字段
ALTER TABLE test01 
DROP tel;

-- 添加和删除多个字段
ALTER TABLE test01
ADD t1 CHAR,
ADD t2 CHAR,
DROP tel;
DESC test01;

3.2 添加和删除默认值

-- 添加和删除默认值
ALTER TABLE test01
ALTER t1 SET DEFAULT '1';
DESC test01;
ALTER TABLE test01
ALTER t1 DROP DEFAULT;
DESC test01;

3.3 修改字段属性、长度、和名称

-- 修改字段的属性和长度(MODIFY)
ALTER TABLE test01
MODIFY t1 CHAR(2) NOT NULL;

-- 又能修改属性、长度,还能修改名称的(CHANGE)
ALTER TABLE test01
CHANGE t2 t2new CHAR(2) NOT NULL;

4. 索引操作

4.1 删除和添加主键

-- 删除主键(有autoincrement的话性需要先去掉)
ALTER TABLE test01
MODIFY id INT(11) NOT NULL,
DROP PRIMARY KEY;

-- 添加主键
ALTER TABLE test01
ADD PRIMARY KEY(id);

4.2 添加和删除唯一索引

-- 添加唯一索引
ALTER TABLE test01
ADD UNIQUE KEY(t1),
ADD UNIQUE INDEX uni_t2new(t2new);  -- 给索引取别名

SHOW CREATE TABLE test01; -- 查看结果
-- CREATE TABLE `test01` (
--   `id` int(11) NOT NULL,
--   `num` int(11) DEFAULT NULL,
--   `username` char(8) DEFAULT NULL,
--   `t1` char(2) NOT NULL,
--   `t2new` char(2) NOT NULL,
--   PRIMARY KEY (`id`),
--   UNIQUE KEY `t1` (`t1`),
--   UNIQUE KEY `uni_t2new` (`t2new`)
-- ) ENGINE=InnoDB DEFAULT CHARSET=utf8

-- 删除唯一索引
ALTER TABLE test01
DROP INDEX t1;

5. 下一节我们将学习Mysql存储引擎

数据库总结-04 Mysql数据库 数据库引擎MyISAM和InnoDB

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值