java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

java.sql
接口 SQLData


public interface SQLData

该接口用于 SQL 用户定义类型 (UDT) 到 Java 编程语言中类的自定义映射关系。实现 SQLData 接口的类的类对象将以适当的 Connection 对象类型映射连同 UDT(此对象是它的自定义映射关系)的 SQL 名称一起进行输入。

通常,SQLData 实现将为 SQL 结构类型的每个属性定义一个字段,或者为 SQL DISTINCT 类型定义单个字段。用 ResultSet.getObject 方法从数据源检索 UDT 时,会将其映射为此类的实例。程序员可以像对待 Java 编程语言中的其他对象那样在此类实例上执行操作,然后通过调用 PreparedStatement.setObject 方法(此方法将其映射回 SQL 类型)存储对它所作的更改。

预期自定义映射关系的类的实现可以通过工具完成。在典型的实现中,程序员将仅提供 SQL UDT 的名称、要将该名称映射到的类的名称和要将 UDT 的每个属性映射到的字段名称。工具将使用此信息实现 SQLData.readSQLSQLData.writeSQL 方法。readSQL 方法调用适当的 SQLInput 方法从 SQLInput 对象读取每个属性,writeSQL 方法调用 SQLOutput 方法通过 SQLOutput 对象将每个属性写回数据源。

应用程序员通常不直接调用 SQLData 方法,而 SQLInputSQLOutput 方法由 SQLData 方法而不是应用程序代码在内部调用。

从以下版本开始:
1.2

方法摘要
 String getSQLTypeName()
          返回此对象表示的 SQL 用户定义类型的完全限定名称。
 void readSQL(SQLInput stream, String typeName)
          用从数据库读取的数据填充此对象。
 void writeSQL(SQLOutput stream)
          将此对象写入给定的 SQL 数据流,同时将其转换回数据源中它的 SQL 值。
 

方法详细信息

getSQLTypeName

String getSQLTypeName()
                      throws SQLException
返回此对象表示的 SQL 用户定义类型的完全限定名称。JDBC 驱动程序调用此方法来获取 UDT 实例的名称,该名称将被映射到 SQLData 的这一实例。

返回:
构造和填充此对象时传递到方法 readSql 的类型名称
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2

readSQL

void readSQL(SQLInput stream,
             String typeName)
             throws SQLException
用从数据库读取的数据填充此对象。该方法的实现必须遵守此协议:
  • 必须从给定输入流读取 SQL 类型的每个属性或元素。此操作通过调用输入流的某个方法读取每个项(按照它们在类型的 SQL 定义中显示的顺序)。
  • 然后,readSQL 方法将数据分配给(此对象或其他对象的)适当字段或元素。明确地说,它必须调用适当的 reader 方法(SQLInput.readStringSQLInput.readBigDecimal 等)来执行以下操作:对于不同类型,读取其单个数据元素;对于结构类型,读取 SQL 类型的每个属性的值。
JDBC 驱动程序在调用此方法之前用类型映射初始化输入流,此方法由流上适当地 SQLInput reader 方法使用。

参数:
stream - SQLInput 对象,从中读取要自定义映射的值的数据
typeName - 数据流上的值的 SQL 类型名称
抛出:
SQLException - 如果发生数据库访问错误
另请参见:
SQLInput

writeSQL

void writeSQL(SQLOutput stream)
              throws SQLException
将此对象写入给定的 SQL 数据流,同时将其转换回数据源中它的 SQL 值。方法的实现必须遵守此协议:
必须将 SQL 类型的每个属性写入给定的输出流。此操作通过调用输出流的某个方法写入每个项(按照它们在类型的 SQL 定义中显示的顺序)。明确地说,它必须调用适当的 SQLOutput writer 方法(writeIntwriteString 等)来执行以下操作:对于不同类型,写入其单个数据元素;对于结构类型,写入 SQL 类型的每个属性的值。

参数:
stream - SQLOutput 对象,要在其中写入自定义映射的值的数据
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2
另请参见:
SQLOutput

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策