我尝试Oracle Express 11g r2
数据库上运行查询:
SELECT * FROM table_name WHERE LOWER(table_column) = LOWER('Some random COLUMN VALUE')
作为回应,我收到了:
{
error: '[node-odbc] SQL_ERROR',
native: 3,
message: '[Oracle][ODBC][Ora]Optional feature not implemented.',
state: 'HYC00',
type: {
code: 1,
message: 'An error occurred in the Data Access Layer.',
httpStatus: 500
},
toString: [Function] }
我试图找到解决方案。谷歌大多说这是ODBC的错。不幸的是,我必须使用此驱动程序,那么您知道如何解决它吗?供您参考,当我在 DBeaver(JDBC 驱动程序)中运行完全相同的查询时,一切正常。
有两种类型的 Oracle ODBC 驱动程序。一个由Microsoft提供(非常旧的),它是默认Windows安装的一部分。另一个由Oracle提供 - 作为Oracle客户端库的一部分。
我猜你用的是Microsoft的那个。并且您正在尝试获取驱动程序不支持的CLOB或其他数据类型。
检查表中的列table_name
,并尝试在获取之前将它们转换为VARCHAR2
(在查询中)