仅更新新记录sql

时间:2012-12-17 11:05:35

标签: asp.net sql sql-server tsql

表1:

ID    Name   Number
1    James    2344

如果我写

Update Table(Name,Number) set Name = "James", Number = "11111"

现在Name = James保持不变,数字是新的...但是当触发器准备就绪时,它会显示所有字段都已更新。

2 个答案:

答案 0 :(得分:1)

UPDATE tableName
SET Number = 11111
WHERE Name = 'James'

您应该有WHERE子句条件,因此只会更新James

答案 1 :(得分:0)

好像我明白,如果数据存在且是否相同,您将首先检查表格。 但是如果你为所有人提出UPDATE它将是相同的,如果用户名是TIM,而UPDATE它将是相同的TIM只是为了只运行一个sql来检查首先。

您的更新看起来不对

尝试这样做

   UPDATE tablename SET number = 11111, SET name = 'James' WHERE ID = 1

它会更新number,但名称会保留James

  • UPDATE将仅更新已更改的值

编辑: 在插入之前选择它的gona。

我认为值得改变 - 但在插入之前可能不值得选择。