在Laravel问题中将插入查询与多个值绑定

时间:2016-12-13 08:16:31

标签: php mysql laravel

我关注docs

我有一个插入声明:

DB::insert('insert into users (id, name) values (?, ?)', [1, 'Dayle']);

我有一个包含多个值的插入查询,因此我尝试了以下操作:

DB::insert('insert into users (id, name) values (?, ?)', [1, 'Dayle'], (?, ?)', [2, 'Jimmy'], (?, ?)', [3, 'John']);

DB::insert('insert into users (id, name) values (?, ?)', [1, 'Dayle'], [2, 'Jimmy'], , [3, 'John']);

他们都没有工作:(

我做错了什么? thx

1 个答案:

答案 0 :(得分:4)

您的查询看起来很好,它对我有用。但是如果你想避免这种问题,你应该使用Eloquent

DB::table('users')->insert([
    ['name' => 'Dayle'],
    ['name' => 'John'],
]);

或{{3}}:

User::create([
    ['name' => 'Dayle'],
    ['name' => 'John'],
]);

如果由于某种原因您想使用DB::insert(),则可以使用:

DB::insert('insert into users (name) values ("Dayle"), ("Jimmy")');

使用绑定:

DB::insert('insert into users (name) values (?), (?)', ['Dayle', 'Jimmy'])