Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 操作数类型冲突: varbinary 与 text 不兼容

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
简介: Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 操作数类型冲突: varbinary 与 text 不兼容

 问题:使用mybatisplus向数据库插入数据时,后台报了如下错误:

Cause: com.microsoft.sqlserver.jdbc.SQLServerException: 操作数类型冲突: varbinary 与 text 不兼容

分析:经查发现为给后台text字段传入了null值导致报错,程序中传入的时候如果是null赋值为“”,问题解决。

参考文章:

操作数类型冲突: varbinary 与 text 不兼容 - 程序员大本营


目录
相关文章
|
6月前
|
Java 数据库连接 数据库
【YashanDB知识库】jdbc查询st_geometry类型的数据时抛出YAS-00101 cannot allocate 0 bytes for anlHeapMalloc异常
【YashanDB知识库】jdbc查询st_geometry类型的数据时抛出YAS-00101 cannot allocate 0 bytes for anlHeapMalloc异常
|
6月前
|
Java 数据库连接
【YashanDB知识库】JDBC驱动的date类型字段结果集调用getString方法只返回日期,不返回时分秒
【YashanDB知识库】JDBC驱动的date类型字段结果集调用getString方法只返回日期,不返回时分秒
|
7月前
|
Java 数据库连接 数据库
【YashanDB 知识库】jdbc 查询 st_geometry 类型的数据时抛出 YAS-00101 cannot allocate 0 bytes for anlHeapMalloc 异常
**简介:** 客户在使用 YashanDB JDBC 驱动查询含 st_geometry 列的数据时,遇到 YAS-00101 错误,提示无法分配内存。该问题影响所有版本的 YashanDB,导致业务中断。原因是用户缺少对 st_geometry 类型的 execute 权限。解决方法是为用户赋权:`grant execute any type to <username>;` 以恢复正常运行。
|
7月前
|
Java 数据库连接
【YashanDB 知识库】JDBC 驱动的 date 类型字段结果集调用 getString 方法只返回日期,不返回时分秒
**问题简介:** 在使用 JDBC 驱动查询 YashanDB 的 date 类型字段时,直接调用 ResultSet 的 getString 方法仅返回 YYYY-MM-DD 格式的日期字符串,缺少时分秒信息,影响业务逻辑。此问题存在于所有 YashanDB 驱动版本,原因是驱动内部实现问题。解决方法包括使用 `rs.getTimestamp(1).toString()` 或在 JDBC 连接串中添加 `mapDateToTimestamp=true` 参数。 **风险及影响:** 返回的字符串只有日期部分,缺失时间信息,可能导致业务逻辑异常。
|
7月前
|
Java 数据库连接 数据库
【YashanDB 知识库】jdbc 查询 st_geometry 类型的数据时抛出 YAS-00101 cannot allocate 0 bytes for anlHeapMalloc 异常
**问题简介:** 客户使用 YashanDB JDBC 驱动查询含 st_geometry 列的数据时,出现 YAS-00101 错误,提示无法分配 0 字节内存。该问题影响所有 YashanDB 版本,导致业务中断。原因是数据库用户缺少 st_geometry 类型的 execute 权限。解决方法是为用户赋权:`grant execute any type to <username>;`。
|
7月前
|
Java 数据库连接
【YashanDB 知识库】JDBC 驱动的 date 类型字段结果集调用 getString 方法只返回日期,不返回时分秒
**问题简介:** 在使用 JDBC 驱动查询 YashanDB 中的 date 类型字段时,直接调用 ResultSet 的 getString 方法仅返回日期部分(YYYY-MM-DD),缺少时分秒信息,影响业务逻辑。此问题存在于所有 YashanDB 驱动版本,原因是驱动内部实现问题。解决方法:使用 `rs.getTimestamp(1).toString()` 或在连接串中增加 `mapDateToTimestamp=true` 参数。 **风险及影响:** 返回字符串缺少时分秒,可能导致业务逻辑错误。 **受影响版本:** 所有 YashanDB 驱动版本。
|
8月前
|
SQL Java 测试技术
Cause: dm.jdbc.driver.DMException: Digital overflow
在测试环境中遇到报错:`org.apache.ibatis.type.TypeException`,原因是为参数#1设置非空值时JdbcType为空,最终导致`dm.jdbc.driver.DMException: Digital overflow`。经分析发现,测试环境中的`invoiceId`字段类型为`BIGINT`,而传入的字符串值超出了`BIGINT`的最大长度,导致数字溢出。本地环境中该字段为`varchar(64)`,因此未出现此问题。调整测试环境表结构后,问题得以解决。
|
SQL 存储 数据库
SQL Server 中的备份类型详解
【8月更文挑战第31天】
407 0
Sql Server 增加字段、修改字段、修改类型、修改默认值
Sql Server 增加字段、修改字段、修改类型、修改默认值
1011 0
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用合集之使用JDBC方式读取Oracle的number类型时,通过什么方式进行映射
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
342 0
实时计算 Flink版产品使用合集之使用JDBC方式读取Oracle的number类型时,通过什么方式进行映射

热门文章

最新文章