- 論壇徽章:
- 1
|
來源:
網(wǎng)海拾貝
[url=javascript:window.open('http://shuqian.qq.com/post?from=3&title='+encodeURIComponent(document.title)+'&uri='+encodeURIComponent(document.location.href)+'&jumpback=2&noui=1','favit','width=930,height=470,left=50,top=50,toolbar=no,menubar=no,location=no,scrollbars=yes,status=yes,resizable=yes');void(0)] [/url]
![]()
在更改列順序之前,你需要考慮是否的確需要更改表中的列順序。SQL的
核心
要點是從數(shù)據(jù)存儲格式獲取應用?倯付z索數(shù)據(jù)的順序。在下面的第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;
如果決定更改表列的順序,可執(zhí)行下述操作:
用具有新順序的列創(chuàng)建新表。
執(zhí)行該語句:
mysql> INSERT INTO new_table
-> SELECT columns-in-new-order FROM old_table;
撤銷或重命名old_table。
將新表重命名為原始名稱:
mysql> ALTER TABLE new_table RENAME old_table;
SELECT *十分適合于
測試
查詢。但是,在應用程序中,永遠不要依賴SELECT *的使用,不要依賴根據(jù)其位置檢索列。如果添加、移動或刪除了列,所返回的列的順序和位置不會保持相同。對表結構的簡單更改也會導致應用程序失敗。
本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u/31/showart_691675.html |
|