mysql中如何改变字段或者列的顺序转载

原创
小哥 3年前 (2022-10-27) 阅读数 141 #大杂烩

指向本文的链接:https://blog.csdn.net/zhezhebie/article/details/54912411

像这样创建一个数据表,想放进去。id将它放在第一列,因为它是主键,并且是自我递增的:

mysql> select * from student
-> ;
+-------+-------+-------+----+
| class | name  | score | id |
+-------+-------+-------+----+
|     1 | user1 |   100 |  1 |
|     1 | user  |    45 |  2 |
|     1 | user1 |    80 |  3 |
|     1 | user  |    62 |  4 |
|     1 | user1 |   100 |  5 |
|     2 | user  |   108 |  6 |
|     2 | user1 |    90 |  7 |
|     2 | user  |    24 |  8 |
+-------+-------+-------+----+
8 rows in set (0.00 sec)

原来的订单如上所示,怎么说呢?id放在前面,数据不动,属性不变?

不用说,直接进入句子:

mysql> alter table student modify id int(10) unsigned auto_increment first;
Query OK, 8 rows affected (0.02 sec)
Records: 8  Duplicates: 0  Warnings: 0

mysql> desc student;
+-------+------------------+------+-----+---------+----------------+
| Field | Type             | Null | Key | Default | Extra          |
+-------+------------------+------+-----+---------+----------------+
| id    | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| score | int(10)          | YES  |     | NULL    |                |
| class | int(10)          | NO   |     | NULL    |                |
| name  | varchar(10)      | NO   |     | NULL    |                |
+-------+------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

mysql> select * from student;
+----+-------+-------+-------+
| id | score | class | name  |
+----+-------+-------+-------+
|  1 |   100 |     1 | user1 |
|  2 |    45 |     1 | user  |
|  3 |    80 |     1 | user1 |
|  4 |    62 |     1 | user  |
|  5 |   100 |     1 | user1 |
|  6 |   108 |     2 | user  |
|  7 |    90 |     2 | user1 |
|  8 |    24 |     2 | user  |
+----+-------+-------+-------+
8 rows in set (0.00 sec)

这是第一个地方,如果你想把name放到id在那之后?这就足够了(first 换成 after即可):

mysql> alter table student modify name varchar(10) after id;
Query OK, 8 rows affected (0.03 sec)
Records: 8  Duplicates: 0  Warnings: 0

mysql> select * from student;
+----+-------+-------+-------+
| id | name  | score | class |
+----+-------+-------+-------+
|  1 | user1 |   100 |     1 |
|  2 | user  |    45 |     1 |
|  3 | user1 |    80 |     1 |
|  4 | user  |    62 |     1 |
|  5 | user1 |   100 |     1 |
|  6 | user  |   108 |     2 |
|  7 | user1 |    90 |     2 |
|  8 | user  |    24 |     2 |
+----+-------+-------+-------+
8 rows in set (0.00 sec)

完美地解决了问题!

添加一列:

ALTER TABLE ocs\_reqs ADD sw\_atom\_ids VARCHAR(255) NOT NULL AFTER create\_time;
————————————————
版权声明:本文是CSDN博主「SHUIPING_YANG“原文,跟上。 CC 4.0 BY-SA 版权协议,转载请附上原始来源链接和本声明。
原始链接:https://blog.csdn.net/zhezhebie/article/details/54912411

版权声明

所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除

热门