[SQL ] column name有括號的操作

作者: jasonhsu14 (小健人)   2020-05-03 21:05:55
資料庫名稱:sqlite3
資料庫版本:
內容/問題描述:
各位前輩好,小弟欲處理 刪除table中的某部分column
但SQLite對ALTER TABLE的限制,所以我參考網路的教學方式
範例方式如下,假設table 為 t1 他有3個column a, b, c
而欲刪除c的方式為下
BEGIN TRANSACTION;
CREATE TEMPORARY TABLE t1_backup(a,b);
INSERT INTO t1_backup SELECT a,b FROM t1;
DROP TABLE t1;
CREATE TABLE t1(a,b);
INSERT INTO t1 SELECT a,b FROM t1_backup;
DROP TABLE t1_backup;
COMMIT;
但問題是,a欄的column name是含有()
因此會出現下列錯誤
Result: near "(": syntax error
但我如果上述程式碼都不考慮a,單純只有b,或其他沒有()者
就可以執行,唯獨有()的在執行就會出現上述錯誤..
因此想詢問有關 () 的處理方式
先謝謝各位
作者: MOONY135 (談無慾)   2020-05-04 00:00:00
`(a,b)` 弄成文字看看? 但大概後面的人會靠北你這種欄位
作者: tedcat (動靜:MSN暱稱為主)   2020-05-04 02:17:00
試試看加中括號 [a]

Links booklink

Contact Us: admin [ a t ] ucptt.com