[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