JDBC 中 RowId 对象是什么?


RowId 是 SQL 的内置类型,是数据库表中某一行的地址。java.sql 软件包的 RowId 接口与 SQL ROWID 值映射。

RowId 值对每一行是唯一的,并且是访问行的最快方式。不能将它用于表的主键。

检索 RowId 对象

可以使用 ResultSet、CallableStatement、PreparedStatement 接口的 getRowId() 方法检索特定行的 RowId。

此方法接受表示列标签的字符串值或表示列索引的整数值,并返回相应的 RowId 对象。

//Retrieving the RowId objects
RowId rowId1 = rs.getRowId("Mobile_Brand");
RowId rowId2 = rs.getRowId("Unit_Sale");

设置 PreparedStatement 的 RowId 值

可以使用它作为表示每一行的唯一值。可以使用 setRowId() 方法将它设置为 PreparedStatement 的参数。对于此方法,需要传入一个整数,表示需要将 RowId 设置为值的该参数索引。

RowId rowid = rs.getRowId("Mobile_Brand");
PreparedStatement pstmt = con.prepareStatement("insert into myTable values (?, ?, ?)");
pstmt.setRowId(1, rowId);
pstmt.setString(2, "Raja");
pstmt.setString(3, "Hyderabad");

更新日期:30-7-2019

500 浏览量

启动您的 职业生涯

通过完成课程获得认证

立即开始
广告