admin 发表于 2022-11-25 11:37:48

mysql数据库修改表源码教程

mysql数据库修改表源码教程

语法:alter table 表名 创建初始表:
mysql> create table stu(
    -> id int,
    -> name varchar(20)
    -> );
Query OK, 0 rows affected (0.00 sec)1、添加字段:alter table 表名add 字段名 数据类型 [位置]

mysql> alter table stu add `add` varchar(20);        -- 默认添加字段放在最后
Query OK, 0 rows affected (0.05 sec)

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

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

mysql> desc stu;
+-------+-------------+------+-----+---------+-------+
| Field | Type      | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| age   | int(11)   | YES|   | NULL    |       |
| id    | int(11)   | YES|   | NULL    |       |
| name| varchar(20) | YES|   | NULL    |       |
| sex   | char(1)   | YES|   | NULL    |       |
| add   | varchar(20) | YES|   | NULL    |       |
+-------+-------------+------+-----+---------+-------+
5 rows in set (0.00 sec)2、删除字段:alter table 表 drop 字段名   

mysql> alter table stu drop age;   -- 删除age字段
Query OK, 0 rows affected (0.00 sec)
Records: 0Duplicates: 0Warnings: 03、修改字段(改名):alter table 表 change 原字段名 新字段名 数据类型 …   

-- 将name字段更改为stuname varchar(10)
mysql> alter table stu change name stuname varchar(10);
Query OK, 0 rows affected (0.02 sec)
Records: 0Duplicates: 0Warnings: 0

mysql> desc stu;
+---------+-------------+------+-----+---------+-------+
| Field   | Type      | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id      | int(11)   | YES|   | NULL    |       |
| stuname | varchar(10) | YES|   | NULL    |       |
| sex   | char(1)   | YES|   | NULL    |       |
| add   | varchar(20) | YES|   | NULL    |       |
+---------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)4、修改字段(不改名):alter table 表 modify 字段名 字段属性…   

-- 将sex数据类型更改为varchar(20)
mysql> alter table stumodify sex varchar(20);
Query OK, 0 rows affected (0.00 sec)
Records: 0Duplicates: 0Warnings: 0

-- 将add字段更改为varchar(20) 默认值是‘地址不详’
mysql> alter table stu modify `add` varchar(20) default '地址不详';
Query OK, 0 rows affected (0.00 sec)
Records: 0Duplicates: 0Warnings: 05、修改引擎:alter table 表名 engine=引擎名

mysql> alter table stu engine=myisam;
Query OK, 0 rows affected (0.01 sec)
Records: 0Duplicates: 0Warnings: 06、修改表名:alter table 表名 rename to 新表名   

-- 将stu表名改成student
mysql> alter table stu rename to student;
Query OK, 0 rows affected (0.00 sec)7、将表移动到其他数据库

-- 将当前数据库中的student表移动到php74数据库中改名为stu
mysql> alter table student rename to php74.stu;
Query OK, 0 rows affected (0.00 sec)
页: [1]
查看完整版本: mysql数据库修改表源码教程