请选择 进入手机版 | 继续访问电脑版

mysql数据库操作之修改表/添加,删除,修改,移动

[复制链接]
查看1507 | 回复0 | 2020-9-28 14:37 | 显示全部楼层 |阅读模式
mysql数据库操作之修改表
语法代码:
  1. alter table 表名
复制代码
创建初始表
  1. mysql> create table stu(
  2.     -> id int,
  3.     -> name varchar(20)
  4.     -> );
  5. Query OK, 0 rows affected (0.00 sec)
复制代码
1、添加字段:alter table 表名add [column] 字段名 数据类型 [位置]
  1. mysql> alter table stu add `add` varchar(20);        -- 默认添加字段放在最后
  2. Query OK, 0 rows affected (0.05 sec)

  3. mysql> alter table stu add sex char(1) after name;  -- 在name之后添加sex字段
  4. Query OK, 0 rows affected (0.00 sec)
  5. Records: 0  Duplicates: 0  Warnings: 0

  6. mysql> alter table stu add age int first;  -- age放在最前面
  7. Query OK, 0 rows affected (0.00 sec)
  8. Records: 0  Duplicates: 0  Warnings: 0

  9. mysql> desc stu;
  10. +-------+-------------+------+-----+---------+-------+
  11. | Field | Type        | Null | Key | Default | Extra |
  12. +-------+-------------+------+-----+---------+-------+
  13. | age   | int(11)     | YES  |     | NULL    |       |
  14. | id    | int(11)     | YES  |     | NULL    |       |
  15. | name  | varchar(20) | YES  |     | NULL    |       |
  16. | sex   | char(1)     | YES  |     | NULL    |       |
  17. | add   | varchar(20) | YES  |     | NULL    |       |
  18. +-------+-------------+------+-----+---------+-------+
  19. 5 rows in set (0.00 sec)
复制代码
2、删除字段:alter table 表 drop [column] 字段名   
  1. mysql> alter table stu drop age;   -- 删除age字段
  2. Query OK, 0 rows affected (0.00 sec)
  3. Records: 0  Duplicates: 0  Warnings: 0
复制代码
3、修改字段(改名):alter table 表 change [column] 原字段名 新字段名 数据类型 …   
  1. -- 将name字段更改为stuname varchar(10)
  2. mysql> alter table stu change name stuname varchar(10);
  3. Query OK, 0 rows affected (0.02 sec)
  4. Records: 0  Duplicates: 0  Warnings: 0

  5. mysql> desc stu;
  6. +---------+-------------+------+-----+---------+-------+
  7. | Field   | Type        | Null | Key | Default | Extra |
  8. +---------+-------------+------+-----+---------+-------+
  9. | id      | int(11)     | YES  |     | NULL    |       |
  10. | stuname | varchar(10) | YES  |     | NULL    |       |
  11. | sex     | char(1)     | YES  |     | NULL    |       |
  12. | add     | varchar(20) | YES  |     | NULL    |       |
  13. +---------+-------------+------+-----+---------+-------+
  14. 4 rows in set (0.00 sec)
复制代码
4、修改字段(不改名):alter table 表 modify 字段名 字段属性…   
  1. -- 将sex数据类型更改为varchar(20)
  2. mysql> alter table stu  modify sex varchar(20);
  3. Query OK, 0 rows affected (0.00 sec)
  4. Records: 0  Duplicates: 0  Warnings: 0

  5. -- 将add字段更改为varchar(20) 默认值是‘地址不详’
  6. mysql> alter table stu modify `add` varchar(20) default '地址不详';
  7. Query OK, 0 rows affected (0.00 sec)
  8. Records: 0  Duplicates: 0  Warnings: 0
复制代码
5、修改引擎:alter table 表名 engine=引擎名   
  1. mysql> alter table stu engine=myisam;
  2. Query OK, 0 rows affected (0.01 sec)
  3. Records: 0  Duplicates: 0  Warnings: 0
复制代码
6、修改表名:alter table 表名 rename to 新表名  
  1. -- 将stu表名改成student
  2. mysql> alter table stu rename to student;
  3. Query OK, 0 rows affected (0.00 sec)
复制代码
7、将表移动到其他数据库
  1. -- 将当前数据库中的student表移动到php74数据库中改名为stu
  2. mysql> alter table student rename to php74.stu;
  3. Query OK, 0 rows affected (0.00 sec)
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

UID
1
贡献
387
丢币
38902
主题
4607
回帖
116
注册时间
2018-9-25
最后登录
2024-4-16