2015-06-30 65 views

回答

5

以下查詢將刪除數據庫your_database中表your_table中包含任何空格的列名稱中的所有空格。您可以用您需要的值替換。

SELECT 
    CONCAT(
      'ALTER TABLE ', C.TABLE_NAME, ' CHANGE `', 
      C.COLUMN_NAME, '` ', REPLACE(C.COLUMN_NAME, ' ', ''), ' ', 
      C.DATA_TYPE, ';' 
     ) 
FROM 
    INFORMATION_SCHEMA.COLUMNS C 
WHERE 
    TABLE_SCHEMA = 'your_database' AND TABLE_NAME = 'your_table' 
    AND C.COLUMN_NAME LIKE '% %'; 

請密切關注列名周圍的反引號。這將輸出一組ALTER TABLE報表看起來像如下:

ALTER TABLE your_table CHANGE `Old Column Name` OldColumnName VARCHAR; 
-1

試試這個系統過程:

EXEC sp_RENAME 'TableName.OldName' , 'NewName', 'COLUMN' 
+0

對不起,是明確可以說我有一個名爲「訂單編號」一欄,我希望它爲'OrderID' –

+0

EXEC sp_RENAME'TableName.Order ID','OrderID','COLUMN' –