以下以postgresql数据库为例子,说明如何删除关联的表数据. 如果有人删除了一个订单,那么订单项也被删除。(
关键:级联)
CREATE TABLE orders ( order_id integer PRIMARY KEY, shipping_address text, ... ); CREATE TABLE order_items ( product_no integer REFERENCES products order_id integer REFERENCES orders ON DELETE CASCADE, quantity integer, PRIMARY KEY (product_no, order_id) );注意上面黑体字. 下面写sql语句: delete from orders where order_id in (select order_id from order_items); 最后查看数据库: 结果删除orders 表记录的同时order_items记录也被删除掉. OK,解决了. 当然还有其他很多方法可以做到,比如说: 存储过程,触发器之类的 也可以做到删除关联表 <script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> <script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>