我LongText
在 SQL 中的一列中面临一个小时左右的问题。我目前正在做一个网络项目,在某个时候我们有一个搜索表单,允许用户搜索多个字段。由于客户的用户被迫使用 IE 9,我们不得不创建一个 javascript... 脚本来解析整个表单,并且只获取所需的内容,以免超过 IE 的 2k 字符限制。
到目前为止一切顺利,脚本运行良好,直到我们添加了一个textarea
代表LongText
数据库中的列的字段。问题似乎来自 SQL 不会将String
SQL 语句中的简单语句作为 LongText 的事实。
这是查询的样子:
SELECT * FROM SONORA.CF_CPR_CASE WHERE CASEFOLDERID != 2
and CMF_VLM_APPLICATION like '%CPR%' and CPR_DESCRIPTION='rererere'
and CMF_TYPE_CASE_FK like '%LC_130125_074927_000001_60%'
但我得到这个错误:
EJBException:; nested exception is: javax.ejb.EJBException: The data types ntext
and varchar are incompatible in the equal to operator.S_EXCP(204); nested
exception is: javax.ejb.EJBException: The data types ntext and varchar
are incompatible in the equal to operator.S_EXCP(204)
Found in FmsQuery: SELECT * FROM {{DBTABLEPREFIX}}CF_CPR_CASE WHERE
CASEFOLDERID != 2 and CMF_VLM_APPLICATION like '%CPR%' and
CPR_DESCRIPTION='ztztztztz' and CMF_TYPE_CASE_FK like
'%LC_130125_074927_000001_60%'
我们正在使用 CASE360,它不太为人所知,但仍然无关紧要,我们正在通过 javascript 构建 SQL 语句的“where 子句”,然后将其发送到 CASE360 处理器,该处理器将接受所有这些并执行查询。这部分工作正常,只是 LongText 列让我很难过。
如果你们知道这个 SQL 查询应该是什么样子才能被成功解释,那么我会非常高兴!
提前谢谢你的帮助。