使用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”语句?
答案 0 :(得分:1)
首先,您无法一次更新多个表。即使您被允许连接表,每个UPDATE
命令也只应更新一个表。其次,update语句在语法上有错误。 SET
语句中应始终包含单个update
子句。如果要更新多个列,请用逗号分隔。
答案 1 :(得分:0)
如果你想测试更新语句而不实际更改任何内容,但看看它是否编译以及它会产生多少行,请尝试以下方法:
query = ('UPDATE ProjectBridge.JobNumber, ProjectOffice.ProjectName,Client.ClientName'
'SET ProjectBridge.JobNumber = ProjectBridge.JobNumber,
'SET ProjectOffice.ProjectName = ProjectOffice.ProjectName,
'SET Client.ClientName = Client.ClientName,