Laravel 5.5设置SQL变量

时间:2017-11-08 06:17:54

标签: php sql laravel pdo

我在尝试在Laravel 5.5中设置SQL变量时遇到错误。

PDOException: SQLSTATE[HY000]: General error: 1 near "SET": syntax error

SQL

SET @i = 0;

同样的SQL在phpMyAdmin中运行良好。

我尝试过的所有因素都会导致相同的错误

DB::statement("SET @i = 0");
DB::select(DB::raw("SET @i = 0;"));
$pdo = DB::connection()->getPdo();
$pdo->prepare("SET @i = 0;");
$pdo->execute();

更新

我发现了我的错误,请参阅下面的答案。

2 个答案:

答案 0 :(得分:0)

事实证明我在我的测试中只得到了这个错误,我在内存中使用了SQLite。 SQLite不支持此SQL语法。我想,必须摆脱那个考验。

答案 1 :(得分:0)

你应该这样做:

 DB::statement(DB::raw('SET @i = 0'));