将文本转换为 varchar

Posted

技术标签:

【中文标题】将文本转换为 varchar【英文标题】:Casting a text to varchar 【发布时间】:2020-10-29 02:18:56 【问题描述】:

我正在尝试,因为我之前遇到过关于此错误消息的问题:

The data types text and varchar are incompatible in the equal to operator RSS

通过快速搜索,我发现我需要将文本值转换为 varchar 值。我已经这样做了:

@Query("SELECT e FROM DeStudent e " +
            "WHERE CAST(e.studentExpression as varchar) = :studentExpression" +
            "AND e.deactivationTime = '9999-12-31 00:00:00.000' " +
            "AND (:studentName is null OR e.name = :studentName)" +
            "AND (:studentDescription is null OR e.description = :studentDescription)" +
            "AND (:studentExpression is null OR e.studentExpression = :studentExpression)"
    )

但是我似乎收到了这个错误:

2020-07-08 14:42:39.947 ERROR o.h.hql.internal.ast.ErrorCounter: line 1:142: unexpected token: e

由于此修改,它不允许我运行应用程序。我不确定我做了什么,有什么帮助吗?谢谢你。我也尝试了不同的变体,例如将演员表移动到选择部分,但仍然是同样的错误。

【问题讨论】:

【参考方案1】:

错误消息告诉您问题在于字母“e”未被理解。您的 select 子句是问题所在。您编写了SELECT e FROM DeStudent e,将 DeStudent 表别名为“e”,但 select 子句应指定列,而不仅仅是“e”。要选择所有内容,请使用 *。

SELECT * FROM DeStudent e

【讨论】:

以上是关于将文本转换为 varchar的主要内容,如果未能解决你的问题,请参考以下文章

如何把文本转化为数字

将文本转换为 varchar

jQuery 将 Html 转换为文本并返回

ASP中有啥函数把文本型值转换为数值型值?

使用 JavaScript 将二进制转换为文本

将文本字段值转换为双倍