【问题标题】:Create raw query with laravel使用 laravel 创建原始查询
【发布时间】:2015-07-01 22:47:50
【问题描述】:

我已经阅读了一些关于原始查询的内容,但直到现在还没有成功。我需要通过执行原始查询来从此 SQL Server 查询中获取结果,或者可以使用其他方法来执行此操作。这是我需要使用 laravel 4 的 SQL Server 查询

SELECT CONVERT(DATETIME2(0),SYSDATETIME())

这是我尝试过的:

DB::select( DB::raw('CONVERT(DATETIME2(0),SYSDATETIME())') );

我的 laravel 日志文件中有此错误消息:Incorrect syntax near the keyword 'CONVERT'.'

提前致谢:)

【问题讨论】:

  • 在我看来你忘记指定你的桌子了。
  • 不是从表中查询此查询返回当前sql server datetime
  • 如果要SELECT一个值需要查询一个表,尝试指定一些系统表。

标签: sql laravel laravel-4


【解决方案1】:

您需要为原始查询添加 SELECT:

DB::select( DB::raw('SELECT CONVERT(DATETIME2(0),SYSDATETIME()) AS CurrentDateTime') );

DB::raw() 用于生成查询构建器不会进一步解析的任意 SQL 命令,因此传递的查询需要有效。

【讨论】:

  • @lukasgeiter 是的,除非你使用DB::selectRaw.。不,你真的不需要SELECT 子句,因为你已经在使用DB::select。
  • 我收到此错误:Cannot access empty property
  • 我已更改查询以包含返回时间的列名。它现在应该可以工作了。
  • 整晚都在找这个LOL
猜你喜欢
  • 2019-11-05
  • 1970-01-01
  • 2021-07-09
  • 1970-01-01
  • 1970-01-01
  • 2018-02-01
  • 2012-10-29
  • 1970-01-01
  • 2021-12-05
相关资源
最近更新 更多