SQL更新不止一个Table
SQL Update more than one Table
我在使用 MSSQL 2008EP 使用更新命令时遇到问题。
`
update RowTable1
set RowTable1.Lnum=B1.Lnum, RowTable1.H2Entry= B1.Entry,
from RowTable1 b
inner join Header1 a on Entry1= Entry1
inner join RowsOfHeader2 B1 on B1.Item=b.Code and B1.LNum=b.LNum and B1.Entry=@VarEntry
left join Header2 B2 on B2.Entry= B1.Entry
where b.Entry=@Header2_var;
`
在这种情况下,我必须更新 Table RowsOfHeader2 以及 Header2 和 Header 1。但我不想在单独的语句中执行此操作...是否有一个选项可以在一个语句中执行此操作
此致
奥利弗
MS SQL 无法在单个 UPDATE 语句中更新多个表。
如果我对你的问题的理解正确,那么这可以通过使用 CHANGES 关键字的 MERGE 语句来实现。但这从 SQL 2012 年起可用。
我在使用 MSSQL 2008EP 使用更新命令时遇到问题。 `
update RowTable1
set RowTable1.Lnum=B1.Lnum, RowTable1.H2Entry= B1.Entry,
from RowTable1 b
inner join Header1 a on Entry1= Entry1
inner join RowsOfHeader2 B1 on B1.Item=b.Code and B1.LNum=b.LNum and B1.Entry=@VarEntry
left join Header2 B2 on B2.Entry= B1.Entry
where b.Entry=@Header2_var;
` 在这种情况下,我必须更新 Table RowsOfHeader2 以及 Header2 和 Header 1。但我不想在单独的语句中执行此操作...是否有一个选项可以在一个语句中执行此操作
此致 奥利弗
MS SQL 无法在单个 UPDATE 语句中更新多个表。
如果我对你的问题的理解正确,那么这可以通过使用 CHANGES 关键字的 MERGE 语句来实现。但这从 SQL 2012 年起可用。