0

我想从三个单独的表中删除三行。这是我的查询,但它似乎不起作用。

CREATE PROCEDURE `DB`.`deleteArticle` (IN x INT)
BEGIN

DELETE FROM articles
where article_id=x;

DELETE FROM AUTHORS
where submission_id = select submission_id from article_files where article_id=X;

DELETE FROM article_files
where article_id=X;

END
4

1 回答 1

2

试试这个

CREATE PROCEDURE `DB`.`deleteArticle` (IN x INT)
BEGIN

DELETE FROM articles
WHERE article_id=x;

DELETE FROM AUTHORS
WHERE submission_id IN (SELECT submission_id FROM article_files WHERE article_id=X);

DELETE FROM article_files
WHERE article_id=X;

END
于 2012-04-10T13:25:05.437 回答