Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 为什么这个简单的更新查询可以';不行?_Sql_Sql Server - Fatal编程技术网

Sql 为什么这个简单的更新查询可以';不行?

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 但是如果我尝试执

我是Microsoft SQL Server的新手,在执行
更新
查询时遇到问题:

我有一个名为
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的。