我想获取rs.getInt(1)值并将其插入到param表中。
public void () {
result rs;
int id = 0;
final String queryStr = "select MAX(id) from IDEAA";
try {
connect.connect();
rs = connection.executeQuery(queryStr);
while (rs.next()) {
id = rs.getInt(1); // I need to get the value , Here i get the correct value
}
final String querySt = "insert into param(id,param_id,value) values "
+ "(" + id + "," + TEST + ",'" + "TEST" + "'" + ")" // But when it comes here it the becomes zero.
}
有人可以建议我吗?
答案 0 :(得分:0)
如果您可以在代码中提供更多信息(rs变量的类型以及在何处获取有关类型的更多信息(如果是第三方库))
为什么你会有一个while循环,因为max id总是返回一个最高值。
如果可能还值得看看你是否可以将rs设置为开头。 (rs.first())
然后尝试检索该值。
public void () {
result rs;
int id = 0;
final String queryStr = "select MAX(id) from IDEAA";
try {
connect.connect();
rs = connection.executeQuery(queryStr);
rs.first();
id = rs.getInt(1);
final String querySt = "insert into param(id,param_id,value) values "
+ "(" + id + "," + TEST + ",'" + "TEST" + "'" + ")" // But when it comes here it the becomes zero.
}
http://docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html#getInt(int)
getInt int getInt(int columnIndex) 抛出SQLException 以Java编程语言中int的形式检索此ResultSet对象的当前行中指定列的值。 参数: columnIndex - 第一列是1,第二列是2,... 返回: 列值;如果值为SQL NULL,则返回的值为0 抛出: SQLException - 如果columnIndex无效;如果发生数据库访问错误或在关闭的结果集上调用此方法