gpt4 book ai didi

javascript - 如何将 Javascript 字符串转换为 SQL LongText

转载 作者:行者123 更新时间:2023-11-30 18:08:21 34 4
gpt4 key购买 nike

我在 SQL 中遇到一个关于 LongText 列的问题大约一个小时。我目前正在从事一个网络项目,在某个时候我们有一个搜索表单,允许用户搜索多个字段。由于客户的用户被迫使用 IE 9,我们不得不创建一个 javascript... 脚本,它解析整个表单并只获取需要的内容,以免超过 IE 的 2k 字符限制。

到目前为止,脚本运行良好,直到我们添加了一个 textarea 字段,该字段代表我们数据库中的一个 LongText 列。问题似乎来自于 SQL 不会将 SQL 语句中的简单 String 作为 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 查询应该是什么样子才能被成功解释,那么我会非常高兴!

提前感谢您的帮助。

最佳答案

您可以尝试在 ntext 列上使用 CAST。我不清楚上面的错误来自哪一列。例如,假设它是 CPR_DESCRIPTION 列:

SELECT *
FROM SONORA.CF_CPR_CASE
WHERE CASEFOLDERID != 2
and CMF_VLM_APPLICATION like '%CPR%'
and CAST(CPR_DESCRIPTION as varchar(2000)) ='rererere'
and CMF_TYPE_CASE_FK like '%LC_130125_074927_000001_60%'
;

请记住,您需要为转换选择适当大的 varchar 大小,即使使用最大大小也有可能丢失数据。

关于javascript - 如何将 Javascript 字符串转换为 SQL LongText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15248404/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com