RowId是SQL的内置类型,它是数据库表中行的地址。java.sql包的RowId接口映射有SQL ROWID值。
RowId值对于每一行都是唯一的,它们是访问行的最快方法。您不能将其用作表的主键。
您可以使用ResultSet,CallableStatement,PreparedStatement接口的getRowId()方法检索特定行的RowId 。
此方法接受代表列标签的String值,或代表列索引的整数值,并返回相应的RowId对象。
//Retrieving the RowId objects RowId rowId1 = rs.getRowId("Mobile_Brand"); RowId rowId2 = rs.getRowId("Unit_Sale");
您可以将其用作代表每一行的唯一值。您可以使用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");