达梦(DM)数据库JDBC数据类型扩展

MoMo 2021年6月14日15:51:18
评论
366

数据类型扩展

DM JDBC 驱动程序为了支持 DM 特有的数据类型,采用了自定义扩展包的方式来进行

解决。DM.sql 这个包中包含了 DM 特有数据类型所对应的类。时间间隔类型是 DM 具有的

     JDBC               dm.sql.DmdbIntervalYM

dm.sql.DmdbIntervalDT   分别对应于  -月间 隔类型和日 -时间隔类型 JDBC   标准 

java.sql.Types.Time   类型不允许带有纳秒,为了示   DM   中带纳秒的时间类型,设立了

dm.sql.DmdbTime 类型。这些类型的主要方法为:

1. Dm.sql.DmdbIntervalDT

方法名

功能说明

DmdbIntervalDT(byte[])

利用字节数组作为参数的构造函数

DmdbIntervalDT(byte[],int,int)

利用字节数组,指定引导精度、纳秒精度构造函数

DmdbIntervalDT(String)

利用字符串作为参数的构造函数。

DmdbIntervalDT(String,int,int)

设置字符串,指定引导精度、纳秒精度构造函数。

getByteArrayValue()

获取字节数组。

getDTString()

把 DmdbIntervalDT 的值以字符串的形式返回。

getDTType()

获取 DmdbIntervalDT 值类型。

getDay()

获取 DmdbIntervalDT 值中日值。

getHour()

获取 DmdbIntervalDT 值中时值。

getMinute()

获取 DmdbIntervalDT 值中分值。

getSecond()

获取 DmdbIntervalDT 值中秒值。

getNano()

获取 DmdbIntervalDT 值中纳秒值。

getLoadPrec()

获取 DmdbIntervalDT 值中引导精度数。

getSecPrec()

获取 DmdbIntervalDT 值中纳秒精度数。

clear()

清除 DmdbIntervalDT 值。

2. Dm.sql.DmdbIntervalYM

方法名

功能说明

DmdbIntervalYM (byte[])

利用字节数组作为参数的构造函数。

DmdbIntervalYM (byte[],int)

利用字节数组、精度作为参数构造函数,精度默认为 0

DmdbIntervalYM (String)

利用字符串作为参数的构造函数。

DmdbIntervalYM (String,int)

利用字符串、精度作为参数的构造函数,精度默认为 0

getByteArrayValue()

把 DmdbIntervalYM 的值以字节数组的形式返回。

getYMString()

把 DmdbIntervalYM 的值以字符串的形式返回。

getYMType()

获取 DmdbIntervalYM 值类型。

getYear()

返回 DmdbIntervalYM 值中的年值。

getMonth()

返回 DmdbIntervalYM 值中的月值。

getLoadPrec()

获取 DmdbIntervalYM 的引导精度。

toString()

把 DmdbIntervalYM 的值转化为字符串的形式。

clear()

清除 DmdbIntervalYM 值信息。

3. Dm.sql.DmdbTimestamp

方法名

功能说明

valueOf(Date)

根据指定的 java.util.Date 类型构造一个 DmdbTimestamp 类型

valueOf(String)

根据指定的时间类型字符串构造一个 DmdbTimestamp 类型

getDt()

返回一个此对象表示的时间值数组,内容为[年,月,日,时,分,秒,微秒,时区]

getTime ()

返回此对象表示的自  1970  年  1  月  1  日  00:00:00 GMT  以来的毫秒数

setTime(long)

使用给定毫秒时间值设置现有  DmdbTimestamp 对象

getTimezone()

获取 DmdbTimestamp 值中的时区值

setTimezone(int)

设置此对象的时区

getNano()

获取此对象的纳秒值

setNano(long)

设置此对象的纳秒值

toString()

把 DmdbTimestamp 的值转化为字符串的形式

4. 访问方式

     DM JDBC      访              

DmdbPreparedStatementDmdbCallableStatement  DmdbResultSet 类中增加了许多方法。客

户如果想使用这些方法,必须把对象强制转化为 DmdbXXX 类型:

PreparedStatement pstmt = connection.prepareStatement("insert into testInterval  + “values(?)");

((DmdbPreparedStatement)pstmt).setINTERVALYM(1, new DmdbIntervalYM("Interval '0015-08' year to

month"));

int updateCount = pstmt.executeUpdate();

其它方法的使用方式与此类同。而且,时间间隔类型可以利用  setString  和  getString  方

法进行存取,带纳秒的时间类型也可以当作普通的时间类型(不带纳秒)来进行操作。

https://xpanx.com/
MoMo
  • 本文由 发表于 2021年6月14日15:51:18
  • 转载请务必保留本文链接:https://xpanx.com/2947.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: