1

如何修改此代码,以便从获取信息的两个表中删除记录?

SELECT products_description.products_name, products.products_id
FROM products INNER JOIN products_description ON products.products_id =             products_description.products_id
WHERE (((products.products_ordered)=0) AND ((products.products_status)=0));

我对sql编码很陌生,所以如果这是一个愚蠢的问题,请原谅。

4

1 回答 1

1

您可以通过关系和单个查询来做到这一点。

  1. products设置和products_description基于公共字段之间的关系products_id
  2. 勾选“Enforce Reference Integrity”复选框
  3. 勾选“级联删除相关记录”复选框
  4. 保存关系

然后,此查询将从中删除行products以及任何products_description包含products_id与已删除行匹配的值的products行。

DELETE FROM products
WHERE
        products.products_ordered=0
    AND products.products_status=0;

如果你走这条路,请确保你明白后果。作为额外的保护措施,制作并测试您希望保留的数据的备份。;-)

于 2013-03-06T19:28:24.370 回答