Php MySql查询-如何删除不同表中的商户账户及其相关产品

Php MySql查询-如何删除不同表中的商户账户及其相关产品,php,mysql,sql,Php,Mysql,Sql,我正在制作一个网站,它有两个表:1-用户名2-产品 商户字段 商号 全名 用户名 电子邮件 密码 产品表字段 产品名称 专业描述 商号 价格 优惠折扣 在用户名表中,我存储商家信息,在产品表中,我存储商家上传的产品 请立即查询删除商户帐户(从表用户名中)和他上传的产品(从产品表中)。我同意@Tilman Hausherr,听起来像是家庭作业,还有一件事,你想要SQL查询,为什么不用“SQL”标记呢 答案是,我不确定这样做是否好,因为我们不知道这一切是如何运作的。 因此,可能有更有效的方法

我正在制作一个网站,它有两个表:1-用户名2-产品

商户字段

  • 商号
  • 全名
  • 用户名
  • 电子邮件
  • 密码
产品表字段

  • 产品名称
  • 专业描述
  • 商号
  • 价格
  • 优惠折扣
在用户名表中,我存储商家信息,在产品表中,我存储商家上传的产品


请立即查询删除商户帐户(从表用户名中)和他上传的产品(从产品表中)。

我同意@Tilman Hausherr,听起来像是家庭作业,还有一件事,你想要SQL查询,为什么不用“SQL”标记呢

答案是,我不确定这样做是否好,因为我们不知道这一切是如何运作的。 因此,可能有更有效的方法来分别执行
但是您可以在PHP5中尝试多个语句
我没有尝试过,正如我们所说的,我们需要知道它是如何工作的。

如果您的表有外键约束。通过设置级联可以很容易地删除,但您也可以通过使用内部联接从两个表中删除,方法如下,根据需要更改条件

DELETE m.*,p.* FROM merchant m
INNER JOIN product p ON m.merchant_id = p.merchant_id

最简单的方法:您应该使用带有ON DELETE CASCADE的外键。

听起来像是家庭作业……您的数据库表有外键约束吗?如果是这样的话,删除级联是相当漂亮的两个答案中的任何一个对你有帮助吗?如果是,请按绿色符号。如果没有,并且您找到了解决方案,您仍然可以自己回答问题,这在将来可以帮助其他人。多个语句不如单个ACID事务中的多个查询重要,因此,如果删除的任何部分失败,您可以回滚