2016-04-28 30 views
0

我有一個表格,其某些列有#符號,例如讓我們命名錶格學生,我們有一些列,如下所示:如何更改具有#(哈希)符號的MySQL列名稱

級#最後#考試雙

計數#缺席INT(11)

等等

我要重命名的列刪除#,我想這些變化沒有成功:

alter table學生更改Grade#Final#Exam GradeFinalExam double;

alter table學生更改'Grade#Final#Exam'GradeFinalExam double;

alter table學生更改'Grade \ #Final \ #Exam'GradeFinalExam double;

我該怎麼做?還有更快的方法來從每列中刪除'#',而不必一個一個地手動重命名它們嗎? (該表有許多列和不同的數據類型,這使得它難以自動重命名的過程)

+0

你試過了什麼?你得到了什麼錯誤? – symcbean

回答

1

使用反引號:

CREATE TABLE test (`Grade#Final#Exam` DOUBLE); 

DESCRIBE test; 

ALTER TABLE test CHANGE `Grade#Final#Exam` GradeFinalExam DOUBLE; 

DESCRIBE test; 

問候,

詹姆斯

0
ALTER TABLE `Students` CHANGE `Grade#Final#Exam` `GradeFinalExam` DOUBLE; 
0

在MySQL的重命名列的一般語法ALTER TABLE "name of table" CHANGE "name of old column" "name of new column" "Datatype";

試圖逃跑與列名反引號不是單引號

0

周圍的列名使用引號:

ALTER TABLE學生變 '級別#決賽#考試' 雙;