【问题标题】:pdo where doesnt work?pdo 哪里不工作?
【发布时间】:2018-08-03 00:43:30
【问题描述】:

我在 PDO 上尝试一些 sql 但返回 null。因为我在 sqlserver 表上有“ı”字符。

例如;

我在 sql 表上有“carsname”行,我正在尝试获取这些数据

SELECT * FROM cars WHERE carsname='ııı'

我有一个名为 ııı 的数据,但结果为空。我该如何解决?请提供任何帮助。

【问题讨论】:

  • 您的表格字符集是什么?您是否将 PDO 设置为使用相同的字符集?
  • 显示代码一些实际代码。
  • @Geoffrey 首先感谢您的回复,我尝试使用 utf8_general_ci 和 utf8_turkish_ci 但仍然返回 null。
  • 没问题。肯定是编码问题,建议你用utf8mb4。确保您的表字符集设置为此,并且您已在 PDO 连接字符串 (charset=utf8mb4) 中选择了它,然后再次插入记录以确保插入字符时正确编码。插入后更改表类型为时已晚。
  • charset=utf8mb4 运行良好,非常感谢!

标签: php sql pdo


【解决方案1】:

您需要在表和客户端连接上使用兼容的编码。确保您的表使用utf8mb4,并且您的PDO 连接也是通过在连接字符串中指定字符集,即charset=utf8mb4

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-30
    • 1970-01-01
    • 2018-09-25
    • 2016-08-20
    • 1970-01-01
    • 2016-04-19
    • 2018-12-01
    相关资源
    最近更新 更多