我正在內存中運行SQLite數據庫,並試圖使用以下命令刪除表。SQLite「Drop table」錯誤消息:「SQL邏輯錯誤或缺少數據庫」
DROP TABLE 'testing' ;
但是,當我執行SQL語句,我得到這個錯誤
SQL logic error or missing database
之前,我跑了「刪除表」查詢我檢查,以確保該表在數據庫中存在與此查詢。所以我很確定表存在,並且我有一個到數據庫的連接。
SELECT count(*) FROM sqlite_master WHERE type='table' and name='testing';
該數據庫中存儲從文件數據庫加載後,我嘗試刪除該表的數據庫從內存中保存到文件系統。然後,我可以使用第三方SQLite實用程序查看SQLite文件並檢查「測試」是否存在。使用相同的第三方SQLite實用程序,我能夠運行「Drop TABLE」SQL語句而不會出錯。
我能夠創建/更新表沒有任何問題。
我的問題:
- 是否有內存數據庫和刪除表時SQLite中一個文件數據庫之間的差異?
- 是否有一種方法可以禁用在SQLite中刪除表格的功能,我可能會以某種方式重複打開該表格?
編輯:它似乎與鎖定表有關。仍在調查。
糟糕,實際版本中沒有引號。我將它們添加到了問題中,以使事情變得清晰,但我想這隻會讓事情變得更加複雜。編輯問題並刪除引號。 – 2011-03-30 18:58:16