2012-04-29 34 views
0

我正在創建一個總共包含五列的表。爲了避免主要的「創建」過程,我只有足夠的數據來填充四列。在執行該程序後,我有第五列的數據。我開始執行「插入或替換」。但!我只在表述中使用鍵列和第五列。SQLite3 - 更新多列數據庫中的單個列

當我瀏覽數據庫時,第2到第4列是NULL。所以,問題是:有沒有辦法只更新一個特定的列(包括密鑰),同時保持現有數據的機智?

回答

0

INSERT OR REPLACE是錯誤的陳述,正如您發現的那樣。除非您可以爲所有列提供正確的值,否則UPDATE語句是更好的選擇。只需更新列。

update your_table_name 
set your_column_name = 'New Value' 
where your_key_column = 'Something'; 

在許多應用中,要求更多的小心。

update your_table_name 
set your_column_name = 'New Value' 
where your_key_column = 'Something' 
    and your_column_name is null;