原生SQL语句
使用原生sql语句查询请先引入
use Illuminate\Support\Facades\DB;
- 查询语句
// sql 语句
$sql = 'SELECT * FROM users;';
// 执行成功 返回 array
DB::select( $sql );
- 插入语句
// sql 语句
$sql = 'INSERT INTO users(`name`,`age`) values(?,?);';
//执行成功 返回 boolean
DB::insert( $sql ,['manarch',18]);
- 修改语句
// sql 语句
$sql = 'UPDATE users SET `age` = ? WHERE `name` = ?;';
// 返回受影响行数 rows number
DB::update( $sql , [19,'manarch'] );
- 删除语句
// sql 语句
$sql = 'DELETE FROM users WHERE id = ?;';
// 返回删除行数 rows number
DB::delete( $sql , [1]);
注:建议 sql 语句中的变量请尽量使用 ‘ ? ‘ 占位,然后在执行时使用数组的方式替换,有助于防止 sql 注入攻击。
查询构造器
- 查询语句
插入一条数据:
// 返回 boolean
DB::table('users')->insert(['name'=>'manarch','age'=>18]);
插入一条数据并获取新数据的主键值:
// 返回 新增数据的主键值
DB::table('users')->insertGetId(['name'=>'manarch1','age'=>18]);
插入多条数据:
// 返回 boolean
DB::table('users')->insert([
['name'=>'manarch2','age'=>18],
['name'=>'manarch3','age'=>18],
]);
- 修改数据
常规修改操作:
// 返回 受影响行数 rows number
DB::table('users')->where('name','manarch2')->update(['age'=>19]);
给某字段 加
1 :
// 把 manarch3 的年龄加 1 岁
// 返回 受影响行数 rows number
DB::table('users')->where('name','manarch3')->increment('age');
// 把 manarch3 的年龄加 2 岁,并把名字修改为 manarch4
// 返回 受影响行数 rows number
DB::table('users')->where('name','manarch3')->increment('age',2,['name'=>'manarch4']);
给某字段 减
1 :
// 把 manarch3 的年龄减 1 岁
// 返回 受影响行数 rows number
DB::table('users')->where('name','manarch3')->decrement('age');
// 把 manarch3 的年龄减 2 岁,并把名字修改为 manarch4
// 返回 受影响行数 rows number
DB::table('users')->where('name','manarch3')->decrement('age',2,['name'=>'manarch4']);
- 删除数据
常规删除操作:
// 返回 删除的行数 rows number
DB::table('users')->where('name','manarch4')->delete();
清空表:
// 返回 void
DB::table('users')->truncate();
- 查询数据
获取 所有
数据:
// 返回 array(array,array)
DB::table('users')->get();
获取 一条
数据:
// 返回 object
DB::table('users')->first();
按 条件
获取数据
// 获取 id 大于2 的所有数据
// 返回 array(array,array)
DB::table('users')->where('id','>',2)->get();