2011-03-07 77 views
0

在我的應用程序的begininng中,我正在現有的sqlite3數據庫上運行sqlite3命令。 命令是這樣說:sqlite3 alter命令刪除我的分區

sqlStmt = "ALTER TABLE projects ADD COLUMN guid integer DEFAULT 0"; 
if (sqlite3_prepare_v2(db, sqlStmt, -1, &compiledStmt, NULL) == SQLITE_OK){ 
    sqlite3_step(compiledStmt); 
} 

發生的事情是,我的所有數據都將丟失,以及「日記」文件顯示(永不刪除)。 我不知道該怎麼辦 - 我明白這與交易和鎖定有關。 請幫忙。

回答

0

這是一個正常的行爲,因爲Sqlite不支持複雜的操作。 請refer to the documentation.

所以,你需要做的是:

  1. 創建臨時表。
  2. 將其中的所有數據。
  3. 刪除初始表。
  4. 使用新字段創建表格。
  5. 從臨時表發送數據到新表

如果你想要更多的幫助,給我們你的表結構。

+0

我現在明白了。謝謝! – 2011-03-08 04:05:57