0

使用 MSSQL

寻找确认我的代码是否正确。问是因为我理解如果语句不正确可能会弄乱 SQL 数据库。

 query = ('UPDATE ProjectBridge.JobNumber, ProjectOffice.ProjectName,Client.ClientName'
         'SET ProjectBridge.JobNumber = '1205665', 
          ProjectOffice.ProjectName = 'The new name',
          Client.ClientName = 'New Client',
         'FROM ProjectBridge '
         'INNER JOIN ProjectOffice '
         'ON ProjectBridge.PJBId=ProjectOffice.PJBId '
         'INNER JOIN Client '
         'ON ProjectOffice.ClientId=Client.ClientId '
         'WHERE ProjectBridge.JobNumber LIKE '1205666%')

我也见过:

'UPDATE ProjectBridge.JobNumber as Val1'
'SET Val1 = 1205665' 

这是“as”语句的正确用法吗?

4

2 回答 2

1

首先,您不能一次更新多个表。UPDATE即使您被允许连接表,每个命令也只能更新一个表。其次,您的更新语句在语法上有错误。语句中应该总是有一个SET子句update。如果您有多个要更新的列,请用逗号分隔。

于 2012-09-18T16:25:22.917 回答
0

如果您想在不实际更改任何内容的情况下测试您的更新语句,但要查看它是否可以编译以及它会影响多少行,请尝试以下操作:

query = ('UPDATE ProjectBridge.JobNumber, ProjectOffice.ProjectName,Client.ClientName'
         'SET ProjectBridge.JobNumber = ProjectBridge.JobNumber, 
         'SET ProjectOffice.ProjectName = ProjectOffice.ProjectName,
         'SET Client.ClientName = Client.ClientName,
于 2012-09-18T16:23:48.610 回答