Sql 为什么这个简单的更新查询可以';不行?
我是Microsoft SQL Server的新手,在执行Sql 为什么这个简单的更新查询可以';不行?,sql,sql-server,Sql,Sql Server,我是Microsoft SQL Server的新手,在执行更新查询时遇到问题: 我有一个名为VulnerabilityAlertDocument的表,其中包含一些列 如果我尝试使用以下查询更新特定行的单个列的值,我没有问题: UPDATE VulnerabilityAlertDocument SET Title = 'UPDATED-TITLE' WHERE Id = '83157'; 它工作正常,Id=83157的行的Title列的值正确更改为UPDATED-Title 但是如果我尝试执
更新
查询时遇到问题:
我有一个名为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,第1行关键字“SET”附近的语法不正确 我错过了什么?我的查询中有语法问题吗?我怎样才能解决它 Tnx
Andrea更新的正确语法在set语句之间使用逗号,而不是
set
关键字:
UPDATE VulnerabilityAlertDocument
SET BugTraqID = 1,
Title = 'UPDATED-TITLE'
WHERE Id = '83157';
只需使用
SET
一次,然后使用逗号分隔要更新的列:
UPDATE VulnerabilityAlertDocument
SET BugTraqID = 1
SET Title = 'UPDATED-TITLE'
WHERE Id = '83157';
应该是
UPDATE VulnerabilityAlertDocument
SET BugTraqID = 1,
Title = 'UPDATED-TITLE'
WHERE Id = '83157';
删除了mysql标记,因为问题是关于SQL Server的。