Java 如何将参数传入mysql存储过程
你好,我是Java和mysql的新手。我想知道如何使用JAVA中的可调用语句将IN参数传递给mysql存储过程。下面是我的代码,我无法让它工作Java 如何将参数传入mysql存储过程,java,mysql,jdbc,Java,Mysql,Jdbc,你好,我是Java和mysql的新手。我想知道如何使用JAVA中的可调用语句将IN参数传递给mysql存储过程。下面是我的代码,我无法让它工作 Connection conn = DriverManager.getConnection ("jdbc:mysql://"+host+":3306/"+database, user, pass); conn.setAutoCommit(false); CallableStatement cs1 = conn.prepareCall("Call g
Connection conn = DriverManager.getConnection
("jdbc:mysql://"+host+":3306/"+database, user, pass);
conn.setAutoCommit(false);
CallableStatement cs1 = conn.prepareCall("Call get_school_address_details()");
cs1.setInt(1);
ResultSet res = cs1.executeQuery();
System.out.println("Result of SP");
while (res.next())
{
System.out.println (res.getString(1) + " " + res.getString(2) + " " + res.getString(3));
}
它似乎不喜欢我尝试使用cs1.setInt(1)传递参数的方式
请给我一些建议!我只想传递值1,它是一个int,通过传递参数名,然后是我想传递的值,在本例中是第一个:
cs1.setInt("sch_code",1);
您需要在过程调用中显式地使用参数。(例如
{call mysp(?)}
我看到了这一点,但它不允许我将值1添加到cs1.setInt(1);尽管setInt
接受两个参数:位置和值。