这个UPDATE表语句在msdn主题中是否正确

tee*_*nup 4 sql sql-server ado.net

我在以下msdn主题中看到过这种类型的UPDATE语句(就像插入语句一样):

http://msdn.microsoft.com/en-us/library/aa0416cz.aspx#Y2461

更新声明: -

adapter.UpdateCommand = New SqlCommand("UPDATE Customers " &
  "(CustomerID, CompanyName) VALUES(@CustomerID, @CompanyName) " & _
  "WHERE CustomerID = @oldCustomerID AND CompanyName = " &
  "@oldCompanyName", connection)
Run Code Online (Sandbox Code Playgroud)

这个陈述是否正确?

我试过执行它,它给出了语法错误.

Dan*_*bly 6

不,它应该是:

UPDATE Customers
SET 
CustomerID = @CustomerID,
CompanyName = @CompanyName
WHERE
CustomerID = @oldCustomerID AND
CompanyName = @oldCompanyName
Run Code Online (Sandbox Code Playgroud)

或者要完成示例代码,它应该是:

adapter.UpdateCommand = New SqlCommand("UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName WHERE CustomerID = @oldCustomerID AND CompanyName = @oldCompanyName", connection)
Run Code Online (Sandbox Code Playgroud)

以下是您和此情况的另一个参考:http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqldataadapter.updatecommand.aspx