java - 无法使用 LIKE 从 PostgreSQL 选择 Unicode 数据

标签 java postgresql jdbc character-encoding

我有一个带有一些 Unicode 值的 PostgreSQL 数据库。例如马拉地语中的“vaishali”。我想触发一个查询SELECT * FROM table WHERE name LIKE vaishali(我用马拉地语输入“vaishali”,所以我首先在我的程序中转换为unicode)。但它什么也不匹配。为什么?

最佳答案

此问题可能有两个原因:

  1. 未指示 JDBC 驱动程序使用 UTF-8。这实际上是一个错误,因为它应该自动从数据库元数据中获取正确的字符编码。根据我的经验,PostgreSQL JDBC 驱动程序在这方面一直做得很好。

  2. SQL 查询实际上是错误构造/制定的。您发布的内容在语法上已经无效。请发布实际代码和查询。另外,您似乎坚持认为它只发生在 LIKE 查询中。普通的 WHERE name = 'foo' 查询怎么样?

关于java - 无法使用 LIKE 从 PostgreSQL 选择 Unicode 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2361121/

相关文章:

java - ArrayList 中的元素如何工作?

java - 如何将 HTML 链接放入电子邮件正文中?

postgresql - PGSQL : Grant every single right to a user on a schema

PostgreSQL 服务器没有监听

c# - 从 .Net 环境访问 H2 数据库 (JDBC) 的自定义控件

java - 在 Oracle 12C jdbc 驱动程序中获取自动递增 key 时出现 NPE

java - 如何在Java中调用具有多个值的存储过程?

java - MySQL jdbc 驱动程序 ClassNotFoundException : com. mysql.jdbc.Driver

arrays - 将数组传递给存储到 postgres

java - 组播发送性能