删除多个表的查询

时间:2013-03-06 19:08:52

标签: ms-access

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

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编码很新,所以如果这是一个愚蠢的问题,请原谅。

1 个答案:

答案 0 :(得分:1)

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

  1. 根据公共字段products
  2. 设置products_descriptionproducts_id之间的关系
  3. 勾选“强制参照完整性”
  4. 在“级联删除相关记录”
  5. 框中打勾
  6. 保存关系
  7. 然后,此查询将删除products以及products_description行中包含products_id个值的行,这些行与已删除的products行的值相匹配。

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

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