如何更改表中的列順序
首先,請考慮是否的確需要更改表中的列順序。SQL的核心要點是從資料儲存格式獲取應用。總應指定檢索資料的順序。
在下面的第1條語句中,以col_name1、col_name2、col_name3順序返回列;
在第2條語句中,
以col_name1、col_name3、col_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 *的使用,不要依賴根據其位置檢索列。
如果新增、移動或刪除了列,所返回的列的順序和位置不會保持相同。
對錶結構的簡單更改也會導致應用程式失敗。