0
我正在創建一個總共包含五列的表。爲了避免主要的「創建」過程,我只有足夠的數據來填充四列。在執行該程序後,我有第五列的數據。我開始執行「插入或替換」。但!我只在表述中使用鍵列和第五列。SQLite3 - 更新多列數據庫中的單個列
當我瀏覽數據庫時,第2到第4列是NULL。所以,問題是:有沒有辦法只更新一個特定的列(包括密鑰),同時保持現有數據的機智?
我正在創建一個總共包含五列的表。爲了避免主要的「創建」過程,我只有足夠的數據來填充四列。在執行該程序後,我有第五列的數據。我開始執行「插入或替換」。但!我只在表述中使用鍵列和第五列。SQLite3 - 更新多列數據庫中的單個列
當我瀏覽數據庫時,第2到第4列是NULL。所以,問題是:有沒有辦法只更新一個特定的列(包括密鑰),同時保持現有數據的機智?
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;