2019独角兽企业重金招聘Python工程师标准>>>

我现在使用:

1)$get_infos = DB::table('game_info')->where('type',$type)->skip($last)->take(3)->get();

2)$get_gjfz_infos =DB::select('select game_info.* from game_info where type = "1" limit 0,3);

这些语法去每次三行读取数据。

问题1.当剩余数据量不足三条时,怎样让他读取剩余数据而不是直接报错?我想到的一种办法是直接写sql语句,先计算一下全部数据条数,每次取的时候再计算一下剩余条数,但这样又复杂效率又不高。框架有没有方便的方法支持?

问题2.2)中想在sql语句中嵌个变量该怎么写,比如把type=‘1’换成type=$type?还是说只能通过1)式那种语法实现?

问题3.laravel文档中对于数据库操作的get()、first()等等方法都找不到详细的介绍,用的不明不白,有什么其他资料介绍到吗?

问题4.怎么让数据库查询不到或者错误时让它抛出异常,也就是说有没有类似于php中echo mysqli_error($mysqli);这样的方法,把错误返回到视图中好让我调试,现在数据库出错时,视图上就报个500的错,由于用post方法要想直接访问链接调试php还得把路由改回get,调试很困难。

其实好像这四个问题都可以归于问题(3)..

回答:

  1. 通常写原生SQL

  2. DB::select(‘SELECT … type = ?’, array($type))

  3. get返回对象数组,first返回对象。Laravel的文档就是这样的,我也不知道有什么好的资料。但是仔细看,需要知道的东西文档其实都有,只是它不愿意多写一个字。

  4. 你是在本地调试还是在服务器?你应该有权限访问log吧,在app/storage/logs/laravel.log。如果那个文件没有log,log就在Web服务器一层,即Apache或Nginx的log。500错误通常在Web服务器一层的log,这通常是PHP文件语法有错,PHP本身不能处理。而PHP能处理的错误会显示在屏幕(如果app/config.php:debug: true)或显示Ooops. Something wrong…之类

转载于:https://my.oschina.net/HeYuhui/blog/654693

关于laravel数据库问题相关推荐

  1. laravel数据库相关操作

    SQL查询 配置好数据库连接后,可以使用 DB facade 运行查询.DB facade 为每种类型的查询提供了方法:select.update.insert.delete 和 statement. ...

  2. php单独使用laravel数据库 | laravel手动关闭数据库连接

    安装 composer require illuminate/database laravel单独使用案例 增删改查-手动关闭数据库 <?php date_default_timezone_se ...

  3. laravel数据库对象转为数组

    laravel数据库查询Model对象转为数组 我们在使用laravel的eloquent ORM 对数据库进行CRUD操作时,返回给我们的结果不是像TP(3.2版本)那样返回一个数组,而是返回一个对 ...

  4. laravel 数据库获取值的常用方法

    find($id)              需要一个主键$id并返回一个模型对象,若不存在则返回null findOrFail($id)    需要一个主键$id并返回一个模型对象,若不存在则发生错 ...

  5. Laravel数据库迁移和填充(支持中文)

    写在前面 经常我们做项目都团队协作开发,每个人都在自己本地的数据库,如果你曾经出现过让同事手动在数据库结构中添加字段的情况,数据库迁移可以解决你这个问题. 不仅如此,在线上部署的时候,也避免了手动导入 ...

  6. laravel 数据库操作(表、字段)

    1)创建表(make:migration create),例如创建 articles php artisan make:migration create_articles_table 运行命令后,会在 ...

  7. Laravel 数据库实例教程 —— 使用DB门面操作数据库

    Laravel支持多种数据库,包括MySQL.Postgres.SQLite和SQL Server,在Laravel中连接数据库和查询数据库都非常简单,我们可以使用多种方式与数据库进行交互,包括原生S ...

  8. Laravel 数据库配置

    2019独角兽企业重金招聘Python工程师标准>>> @@设置默认连接数据库@@ 'default' => 'mysql', @一 配置database.php 默认为mys ...

  9. Laravel数据库之Seeding

    1.简介 Laravel提供了一种使用种子类将测试数据作为数据库种子的简单方法. 所有种子类都存储在database / seeders目录中. 种子类可能具有您想要的任何名称,但可能应该遵循一些明智 ...

最新文章

  1. Swift -布局框架SnapKit使用
  2. Solaris的syslog机制
  3. juniper防火墙(SSG and SRX)排障抓包命令
  4. Oracle中如何插入特殊字符: 和 ' (多种解决方案)
  5. Java反射 Constructor类
  6. a除b的余数【取模(%)与取余(/)的区别】
  7. postgreSQL学习(二):pgsql的一些基础操作
  8. 内部办公网与IDC机房的GRE隧道配置实践
  9. thinkphp中的__DIR__ __ROOT__ __APP__ __MODULE__ APP_PATH LIB_PATH MODULE_PATH 等是在哪里定义的?...
  10. 自己动手打造属于自己的智能家居(二)
  11. multisim10.0安装教程
  12. 计算机科学与技术高中选课,2019-2021年新高考专业选课要求 大学个专业选科要求解读...
  13. python求一个数的因子_0是素数吗(python求一个数的因子)
  14. Edge浏览器保存主页视频的方法
  15. MATLAB libsvm 安装和使用
  16. 怎么样可以批量下载网页图片?
  17. python字符串分片_Python第六章字符串ppt
  18. IntelliJ idea中集成多个git项目模块
  19. 英语美文-不做有才华的穷人
  20. Java判断日期格式是否正确

热门文章

  1. android开发GPS定位测试(附效果图和示例)【转】
  2. Win7家庭版启用Administrator账户
  3. 如何调试SharePoint中XsltListViewWebPart的XSL
  4. https连接加载http资源
  5. week5 0.1 安装materializecss
  6. Windows server 2012 新功能试用---- powershell 3.0 进程和服务的操作
  7. 一个简单 JDK 动态代理的实例
  8. LINUX weblogic集群搭建- 03启动脚本的控制
  9. JS中比較2个字符串内元素的不同(字符1, 字符2, 分隔符可选)
  10. 浏览器禁用Cookie,基于Cookie的会话跟踪机制失效的解决的方法