2014-02-23 111 views
-2

我是很新的Microsoft SQL Server和我有一个问题,执行UPDATE查询:为什么这个简单的UPDATE查询不能工作?

我有一个名为VulnerabilityAlertDocument包含一些列的表。

如果我尝试使用下面的查询来更新特定行的一列的值我有没有问题:

UPDATE VulnerabilityAlertDocument 
SET Title = 'UPDATED-TITLE' 
WHERE Id = '83157'; 

它工作正常,并具有Id=83157该行的Title列的值正确改为UPDATED-TITLE

,但如果我尝试执行也纷纷改变命名BugTraqID另一列的值,这个新查询它不起作用

UPDATE VulnerabilityAlertDocument 
SET BugTraqID = 1 
SET Title = 'UPDATED-TITLE' 
WHERE Id = '83157'; 

它不能正常工作,给我以下错误信息:

消息156,15级,状态1,行
关键字 'SET' 附近有语法错误。

我错过了什么?我的查询中有语法问题吗?我该如何解决它?

TNX

安德烈

+0

删除mysql标记,因为问题是明确的关于SQL Server。 –

回答

3

update正确的语法使用的一组语句之间的逗号,不是set关键字:

UPDATE VulnerabilityAlertDocument 
    SET BugTraqID = 1, 
     Title = 'UPDATED-TITLE' 
    WHERE Id = '83157'; 
1

你只需要使用SET一次,然后用逗号分开要更新的列:

UPDATE VulnerabilityAlertDocument 
SET BugTraqID = 1 
SET Title = 'UPDATED-TITLE' 
WHERE Id = '83157'; 

应该是

UPDATE VulnerabilityAlertDocument 
SET BugTraqID = 1, 
Title = 'UPDATED-TITLE' 
WHERE Id = '83157'; 
相关问题