Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


数据类型转换

📄字数 937
👁️阅读量 加载中...

在调用XuguDB-JDBC驱动中的某些方法时,需进行Java数据类型与虚谷数据库数据类型的转换,这些方法包括:

  • ResultSet 类 get<Type>方法
  • ResultSet 类 update<Type>方法
  • CallableStatement 类 get<Type>方法
  • PreparedStatement 类 set<Type>方法

注意

数据类型之间的转换,需遵从Java数据类型与虚谷数据库数据类型映射关系规则,否则可能转换失败。

  • com.xugu.cloudjdbc.ResultSet类中get<Type> 方法的类型转换
接口get\<type>方法与虚谷数据库数据类型转换关系图1 接口get<type>虚谷数据库数据类型转换关系

说明

  • X(无丢失转换):指以长精度类型的get<Type>方法获取短精度数据类型列值无丢失。 如:使用 getInt() 方法获取数据库数据类型为smallint的列数据,获取数据完整。
  • Z(依赖转换):指get<Type>方法中的Type类型与获取数据库中列的数据类型不一致,此时需要通过其他数据类型转换为 Type 数据类型,此转换过程值可能丢失部分数据。 如:使用getInt()方法获取数据库数据类型为float的列数据,可获取float列数据的整数值,而小数精度值将丢失。
  • Y(直接转换):指 get<Type>方法中的Type类型与获取数据库中列的数据类型一致。 如:使用getInt()方法获取数据库数据类型为integer的列数据,直接获取完整数据。
  • com.xugu.cloudjdbc.PreparedStatement类中set<Type>方法的类型转换
接口set\<type>方法与虚谷数据库数据类型转换关系图2 接口set<type>方法与虚谷数据库数据类型转换关系

说明

  • P(允许插入):指 set<Type> 方法设置数据库中列数据时,数据无损失存入数据库中。 如:使用 setInt() 方法设置列数据类型为 bigint 的数据时,数据可正确存入。
  • Z(部分插入):指 set<Type> 方法中的 Type 类型和数据库中列数据类型不一致,数据仅能部分正确存入。 如:使用 setInt() 方法设置数据库列类型为 tinyint 的数据,因 tinyint 表示范围为-128~127 的整数值,故而 tinyint表示范围内数据可正确存入,范围外数据将插入失败。