2013-04-05 61 views
0

我想添加一行到数据库,如果它不存在或更新行,如果它。我哪里错了?我已经看了它一千次,并认为我可能会丢失一些愚蠢的东西...任何人都可以发现此SQL语句中的错误吗? <resolved>

UPDATE Classes 
SET (Duration='44', 
INModule='Actions', 
EditionsFOR='Vocus VPR - Basic Edition//Vocus PR - Enterprise Edition//',  
Objectives='objective 1//objective 2//objective 3//', 
PreReq='prerequisite 
1//prerequisite 2//prerequisite 3//', 
Points='training point 1//training point 2//training point 3//',  
ContentLink='www.aol.com', 
OtherInfo='this is the internal info', 
Summary='this is a brief summary of the class') 
WHERE Title='this is the class title' 
IF @@ROWCOUNT=0 
INSERT INTO Classes (Title, Duration, INModule, EditionsFOR, Objectives, PreReq, 
Points, ContentLink, OtherInfo, Summary) 
VALUES ('this is the class title','44','Actions', 
'Vocus VPR - Basic Edition//Vocus PR - Enterprise Edition//', 
'objective 1//objective 2//objective 3//', 
'prerequisite 1//prerequisite 2//prerequisite 3//', 
'training point 1//training point 2//training point 3//', 
'www.aol.com','this is the internal info', 
'this is a brief summary of the class') 
+0

它是做什么的?无论如何它插入它? – 2013-04-05 09:52:21

+0

不,只是引发UPDATE语法错误。 – 2013-04-05 09:54:05

回答

1

删除括号为SET的括号。应该这样写:

UPDATE Classes 
SET Duration = '44', 
    INModule = 'Actions', 
    EditionsFOR = 'Vocus VPR - Basic Edition//Vocus PR - Enterprise Edition//', 
    Objectives = 'objective 1//objective 2//objective  3//', 
    PreReq  = 'prerequisite 1//prerequisite 2//prerequisite 3//', 
    Points  = 'training point 1//training point 2//training point 3//', 
    ContentLink = 'www.aol.com', 
    .... 
+0

谢谢马哈茂德;这解决了这个UPDATE语法错误。现在它抛出以下错误: 查询表达式中的语法错误(缺少运算符) – 2013-04-05 09:55:04

+0

UPDATE或INSERT命令上的新语法错误?你可以单独运行命令吗? – 2013-04-05 10:10:24

+0

运行INSERT INTO命令毫无问题。返回的错误如下: 查询表达式'Title ='类的标题'IF @@ ROWCOUNT = 0时, ContentLink,OtherInfo,Summary)VALUES('课程名称','48','Core','Vocus VPR - 基础版// Vocus PR - 企业' – 2013-04-05 10:22:16

相关问题