我从“1st table”获取数据并将其存储到resultsset中。现在我想将获取的数据插入“2nd table”
问题是“第二个表”只接受int值。
我试过了:
while (rs.next())
{
int g = rs.getInt(1);
}
和
int g = Integer.parseInt(rs);
但它为输入字符串java.lang.NumberFormatException
"com.mysql.jdbc.ResultSet@39badcaa"
答案 0 :(得分:0)
Integer.parseInt(rs.getString(1));
String sql1="SELECT Id FROM kiosk_manager WHERE Kiosk_Centre='"+Uareacode+"'";
stmt1=con.createStatement();
rs=stmt1.executeQuery(sql1);
int parseInt = 0;
while (rs.next()) { parseInt=Integer.parseInt(rs.getString(1)); }
sql="INSERT INTO consumer(KioskManager_Id)VALUES("+parseInt+")"
答案 1 :(得分:0)
您的结果集返回一个无法转换为整数的字符串
试试这个:
while (rs.next()) {
String str = rs.getString("COLUMN_NAME");
int g = Integer.parseInt(str);
}
现在插入Db,如
insert into mytable (myintfield)values(g);
请检查str是否返回空字符串值。
如果str值例如是“SE”,则不会转换。请打印出首先返回的值,并确认它是一个数字,虽然是字符串格式;
如果返回的值是例如“2”
只做
int myint = Integer.parseInt(str);