使用内部联接更新多个表

时间:2011-07-12 14:28:36

标签: sql sql-server sql-server-2005 tsql

据我所知,您可以使用连接从多个表中选择多个列。是否可以使用连接更新多个表中的多个列?

2 个答案:

答案 0 :(得分:6)

<强>不。

您一次只能在一个表格中执行UPDATEINSERT

如果你需要做多次,你可以将它们包含在一个事务中,以确保它们一起通过或失败,但是:

BEGIN TRY
BEGIN TRAN

UPDATE Table1
SET Col1=Value1

UPDATE Table2
SET Col2=Value2

COMMIT TRAN
END TRY
BEGIN CATCH
IF @@TRANCOUNT>0 ROLLBACK
<error message reporting here>
END CATCH

答案 1 :(得分:1)

不可能,除非您在基础表上使用触发器