sql 删除

来源:百度知道 编辑:UC知道 时间:2024/06/23 18:17:12
两个表之间没有建立关系,但是A,B表中都有个字段classcode
删除的时候如果如果两表中有一条数据的classcode值相同,那么两表中的这一条数据都得删除
我写了下面这条语句,可是有错误,怎么写啊?
delete table1,table2
where table1.ClassCode=table2.ClassCode and
table1ID=5

delete同时删除两个表的用法我还没见过,但根据你的要求,两个表没有关联,又想在删除一个表的同时删除另一个表中含有相同字段值的行,那么我推荐你使用触发器,它定义很简单又方便。
比如建立一个触发器,定义为,每当删除表A中的行后,判断B表中有无相同字段值的行,有就删除。例如建立一下触发器:
create trigger delete_same
after delete on A
begin
delete from B where classcode=old.classcode
end

如果你对触发器还不是很了解就自己查一些资料吧,我就帮你到这里了。

delete from table1,table2
where trim(table1.ClassCode)=trim(table2.ClassCode)