此篇文章 基于laravel版本:5.5
laravel基于DB的原生查询可以使用 DB facade 运行查询。DB facade 为每种类型的查询提供了方法:select、update、insert、delete 和 statement。
以下是知识点:
(1)运行查询语句
$users = DB::select('select * from users where active = ?', [1]);
(2)运行插入语句可以在 DB facade 上使用 insert 方法来执行 insert 语句。与 select 一样,该方法将原生 SQL 查询作为其第一个参数,并将其绑定的数据作为第二个参数:DB::insert('insert into users (id, name) values (?, ?)', [1, 'Dayle']);
(3)运行更新语句update 方法用于更新数据库中的现有记录。该方法会返回受该语句影响的行数:
$affected = DB::update('update users set votes = 100 where name = ?', ['John']);
(4)运行删除语句delete 方法用于删除数据库中记录。与 update 一样,会返回受该语句影响的行数:
$deleted = DB::delete('delete from users');
(5)运行普通语句有些数据库语句不会返回任何值。对于这些语句,可以在 DB facade 上使用 statement 方法来操作:DB::statement('drop table users');<