我已经在Firefox浏览器中下载了sqlite manager应用程序,并打开了sqlite manager应用程序。

1)创建名为的数据库DBSQLTEST

2)创建的名为的表SQLTEST 包含三个字段,分别是 SLNO NAME AGE

3)插入新记录

但我想在sqltest表中删除“ AGE ”列

我使用如下的sql命令

ALTER TABLE SQLTEST DROP COLUMN AGE

SQLiteManager消息说

SQLiteManager:可能的SQL语法错误:ALTER TABLE SQLTEST DROP COLUMN AGE [在“DROP”附近:语法错误]
异常名称:NS_ERROR_FAILURE
异常消息:组件返回失败代码:0x80004005(NS_ERROR_FAILURE)[mozIStorageConnection.createStatement]


那是什么错误?

最佳答案

sqlite不支持DROP COLUMN中的ALTER TABLE。您只能重命名表并添加列。

参考:http://www.sqlite.org/lang_altertable.html

如果需要删除列,请创建一个新表,在其中复制数据,删除旧表,然后将表重命名为其意图的名称。

07-24 09:31