【问题标题】:Medoo - Select issueMedoo - 选择问题
【发布时间】:2015-08-27 20:25:17
【问题描述】:

我刚刚开始使用 Medoo 构建应用程序,

我正在尝试运行如下所示的选择查询

$datas = $database->debug()->select(
    "table",
     ["id","password"],
     ["email" => "johndoe@emailaddress.com"]
);

当我运行它时,它使用查询

SELECT "id","password" FROM "table" WHERE "email" = 'johndoe@emailaddress.com'

但是这总是返回 NULL

插入数据库运行正常,当我尝试直接在 mysql CLI 中运行由 medoo 生成的查询时,它返回语法错误。

我正在努力寻找语法问题,也许是 "' 引号?

PHP Version: PHP 5.4.41
MySQL: mysql  Ver 14.14
Medoo: 0.9.8.3

感谢您的帮助

【问题讨论】:

  • 感谢@tadman 这是问题所在,用SET SQL_MODE=ANSI_QUOTES;修复它
  • 将该评论(现已删除)转换为答案。

标签: php mysql medoo


【解决方案1】:

这可能是要求ANSI_QUOTES 的问题。 MySQL 默认有一个非标准设置,因此您可能需要更改它。

通常 MySQL 使用这两种类型的引号来分隔字符串和标识符的反引号,而 SQL 标准是使用双引号作为标识符,使用单引号作为字符串。

如果您更改了应该修复它的服务器设置,但请注意这可能会破坏所有其他依赖于 MySQL 奇怪默认设置的应用程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-09
    • 1970-01-01
    • 2018-08-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多