使用具有WHERE条件的单个查询(SQL Express 2005)从多个表中删除行

这是我使用的查询
DELETE TB1.*,TB2.*
   FROM TB1
        INNER JOIN TB2 ON TB1.PersonID = TB2.PersonID 
  WHERE (TB1.PersonID)='2'

它在MS Access中正常工作,但在sql Server Express 2005中收到错误(‘,’附近的错误语法).

如何解决?请帮忙.

解决方法

您无法使用sql 2005中的单个表达式(或任何其他标准sql)从多个表中删除.访问是这里的例外.

获得此效果的最佳方法是在表与ON DELETE触发器之间指定FOREIGN KEYS.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...