更新时间:2026-07-28 GMT+08:00
分享

java.sql.Struct

java.sql.Struct接口是JDBC对SQL结构化类型的映射,Struct对象包含其所代表的SQL结构化类型的每个属性值,提供了将SQL数据以数组的形式传输到客户端的方法。

表1 java.sql.Struct常用方法

方法名

返回值类型

throws

支持情况

getSQLTypeName()

String

SQLException

Yes

getAttributes()

Object[]

SQLException

Yes

getAttributes(java.util.Map<String,Class<?>> map)

Object[]

SQLException

No

  • getAttribute接口获取的对象类型为Object[],返回的数组中每个元素的类型可参考数据类型映射关系的JAVA变量类型列。

    例如:对于record(c1 int, c2 varchar(5))类型,getAttribute返回Object[]中第一个元素为null或者Integer类型数据,第二个元素为null或者String类型数据。

    特殊说明:元素类型为int2/smallint,元素存取为Short类型。

  • getSQLTypeName接口返回的类型名可参考数据类型映射关系,其中集合类型、数组类型、record类型的类型名映射规则如下。
    1. 若为package里定义的类型,类型名的格式通常为schema.package.type,须符合以下命名规则:
      • 只能包含字母、数字、下划线。
      • 第一个字符不能是数字。

      若schema、package、type中有任意名称不符合命名规则,则需要加引号,即使用"schema"."package"."type"格式。

    2. 若为schema里定义的类型,类型名的格式通常为schema.type,须符合以下命名规则:
      • 只能包含字母、数字、下划线。
      • 第一个字符不能是数字。

      若schema、type中有任意名称不符合命名规则,则需要加引号,即使用"schema"."type"格式。

相关文档