2010-01-04 173 views
21

看來INSERTUPDATE對我做的事情是一樣的。MySQL中的INSERT和UPDATE有什麼區別?

是否有任何場合我應該使用INSERT而不是UPDATE,反之亦然?

+0

如果你確實相信:1)創建一個表,2)立即運行UPDATE語句3)從表中選擇*。 – 2010-01-04 21:59:41

回答

33

CRUD operations中,INSERT是'C',而UPDATE是'U'。它們是永久存儲的四個基本功能中的兩個。另外兩個是SELECTDELETE。至少沒有這四項操作,典型的數據庫系統就不能算完整。

使用INSERT插入新記錄。使用UPDATE來更新現有記錄。

+7

爲什麼你不能插入一個現有的記錄。也許SQL不允許它,但它們不等於相同的東西嗎? – ZL1Corvette 2014-06-11 14:19:17

31

您不能更新不在表中的行。

您不能插入已經在表中的行。

+0

如果您需要將數據添加到可能有或沒有數據的列中,該怎麼辦?有沒有強制插入模式,或某種INSERT-UPDATE混合? – Tom 2016-12-14 21:47:59

+0

您可以更新行,如果它是空的。我已經做了。 – Luka 2017-03-13 15:11:09

4

插入用於將數據添加到表中,更新用於更新已經在表中的數據。

0

插入是用於將新記錄放入表格。而更新使您能夠修改插入的記錄,例如修改數據類型等。

0

插入可用於在BLANK行中插入新記錄。 雖然更新可用於更新非空白行。

1

UPDATE聲明可以使用WHERE子句,但INSERT不能。

相關問題