我正在为高中的班级做一个项目,所以我需要建立一个计费系统,但是我发现一个问题,我需要获取一个账单的ID,但是尝试使用的方法不是返回整数,每次尝试将其转换为“未报告的异常SQLException;必须将其捕获或声明为抛出”;当我尝试将其作为整数返回时,它说我没有声明该变量(必须发生在该变量位于try catch内)
我试图在方法内部将结果集转换为int,并且我尝试使用public int将结果集作为整数返回。
public int lastid(){
Connection con = ConnectionFactory.getConnection();
PreparedStatement st = null;
ResultSet rs = null;
List<VendaProduto> vd = new ArrayList<>();
try {
st = con.prepareStatement("SELECT idvenda FROM vendas ORDER BY idvenda DESC LIMIT 1;");
rs = st.executeQuery();
int val = ((Number) rs.getObject(1)).intValue();
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "Código da venda perdido.");
}
return val;
}
我需要此函数以整数形式返回结果集(销售ID),以便我可以将其插入mysql表中。