资讯专栏INFORMATION COLUMN

Laravel5 基础查询构造器

Doyle / 2874人阅读

摘要:原生语句使用原生语句查询请先引入查询语句语句执行成功返回插入语句语句执行成功返回修改语句语句返回受影响行数删除语句语句返回删除行数注建议语句中的变量请尽量使用占位,然后在执行时使用数组的方式替换,有助于防止注入攻击。

原生SQL语句

使用原生sql语句查询请先引入 use IlluminateSupportFacadesDB;

查询语句

// 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();

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/30637.html

相关文章

  • API Token Authentication

    摘要:新增了很多的新特性,包括了内置多用户认证表单数组输入验证隐式路由模型绑定中间件组的定义中间件访问频率限制等主要功能。相对于变化有点大,简化了的目录结构,并将路由分离出来。由于已将的路由单独分离出来,因此只需在中添加路由规则。 Laravel 5.2 新增了很多的新特性,包括了内置多用户认证、表单数组输入验证、隐式路由模型绑定、中间件组的定义、中间件 throttle 访问频率限制等主要...

    KitorinZero 评论0 收藏0
  • Laravel5.1+ 分页Pagination解析以及扩展

    摘要:文档告诉我们对应于查询语句构造器和的方法,而则等同于方法。那我们还是来看下源码,具体这个是如何实现的中传入的是一个的实例,并调用这个实例化的方法来实现分页的显示的。首先就来简单的实现一个,显示出来上一页和下一页,中间是分页数字的例子。 本文最早发表于本人博客: Laravel5.1+ 分页Pagination解析以及扩展 Laravel 的分页很方便,其实扩展起来也挺容易的,下面就来做...

    LancerComet 评论0 收藏0
  • Any-基于Laravel5.4新的权限管理后台骨架

    摘要:最简化权限管理系统,基于开发。基于开发,唯一优化的是用权限和路由别名绑定,这样代码写好之后就可以直接使用。如果是超级管理员,即使没有这个权限会自动赋予权限给超级管理员角色。默认管理员账号密码。然后正常执行命令其他命令即可。 Any 最简化权限管理系统,基于 Laravel5.4 开发。由于 Laravel5.5 发布推迟,只好先写个 Laravel5.4版本的,后面再升级上去。演示地址...

    Lavender 评论0 收藏0
  • laravel5.4.12新增集合操作when方法

    摘要:从开始,现在包括一个方法,允许您对项目执行条件操作,而不会中断链。像所有其他集合方法,这一个可以有很多用例,选择其中一个例子,想到的是能够基于查询字符串参数进行过滤。 从v5.4.12开始,Laravel Collections现在包括一个when方法,允许您对项目执行条件操作,而不会中断链。 像所有其他Laravel 集合方法,这一个可以有很多用例,选择其中一个例子,想到的是能够基于...

    zhangqh 评论0 收藏0
  • 基于Laravel5.5的模块化开发

    摘要:安装后是单模块应用,但通常情况下,我们的项目往往会有很多模块,如果按单模块去做,文件目录会异常庞大,不利于维护,耦合性太大。那么下面就详细说一下利用最新如何进行分模块开发。 laravel 安装后是单模块应用,但通常情况下,我们的项目往往会有很多模块,如果按单模块去做,文件目录会异常庞大,不利于维护,耦合性太大。那么下面就详细说一下利用最新laravel5.5如何进行分模块开发。 下载...

    wenhai.he 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<