如何使用Laravel执行带有多个语句的原始SQL查询

10 浏览
0 Comments

如何使用Laravel执行带有多个语句的原始SQL查询

有没有办法使用laravel框架执行类似下面的多条语句的查询。

我尝试使用DB::statement但返回了一个SQL语法错误,但当我在phpmyadmin上执行相同的查询时,它可以正常工作,这真是令人沮丧。

请帮帮我。

示例

LOCK TABLE topics WRITE;
SELECT @pRgt := rgt FROM topics WHERE id = ?;
UPDATE topics SET lft = lft + 2 WHERE rgt > @pRgt;
UPDATE topics SET rgt = rgt + 2 WHERE rgt >= @pRgt;
INSERT INTO topics (title, overview, article, image, lft, rgt)
VALUES (?, ?, ?, ?, @pRgt, @pRgt + 1);
UNLOCK TABLES;

0