MariaDB社区

标题: 如何更改表中的列顺序 [打印本页]

作者: jeff    时间: 2007-10-30 12:32
标题: 如何更改表中的列顺序
首先,请考虑是否的确需要更改表中的列顺序。SQL的核心要点是从数据存储格式获取应用。总应指定检索数据的顺序。在下面的第1条语句中,以col_name1col_name2col_name3顺序返回列;在第2条语句中,以col_name1col_name3col_name2顺序返回列:

mysql> SELECT col_name1, col_name2, col_name3 FROM tbl_name;

mysql> SELECT col_name1, col_name3, col_name2 FROM tbl_name;

如果决定更改表列的顺序,可执行下述操作:


1、用具有新顺序的列创建新表。

2、执行该语句:

mysql> INSERT INTO new_table
     -> SELECT columns-in-new-order FROM old_table;


3、撤销或重命名old_table。

4、将新表重命名为原始名称:

mysql> ALTER TABLE new_table RENAME old_table;

SELECT *十分适合于测试查询。但是,在应用程序中,永远不要依赖SELECT *的使用,不要依赖根据其位置检索列。如果添加、移动或删除了列,所返回的列的顺序和位置不会保持相同。对表结构的简单更改也会导致应用程序失败。




欢迎光临 MariaDB社区 (http://123.56.88.72/) Powered by Discuz! X3.2