文字列をパラメーターとしてJDBCプログラムに渡したいと考えています。コードはINT型の入力に対しては正常に機能しますが、文字列型の入力ではブロックをキャッチします。
すべての種類の入力をランダムに取得できるようにプログラムを変更したかったのです。次の Java プログラムを実行する必要があるためです。bash スクリプトで。したがって、クラスファイルが生成されたら、プログラムにランダムな入力を提供して出力を取得することになっています...
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.mysql.jdbc.Statement;
public class JDBC_run {
public static void main(String[] args) throws Exception {
Connection conn = null;
// int var = 123050044 ;
String var = "sir";
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection( "jdbc:mysql://localhost/test?user=root&password=root");
ResultSet rs;
System.out.println("Connected?");
try{
Statement st = (com.mysql.jdbc.Statement) conn.createStatement();
rs = st.executeQuery("SELECT type FROM Table_new WHERE id = " + var);
while ( rs.next() ) {
String lastName = rs.getString("type");
System.out.println(lastName);
}
}
catch(SQLException s){
System.out.println("wrong !!");
}
}
}
int var = 123050044の場合、出力は次のとおりです。
Connected?
student
String var = "sir"の場合、出力は次のようになります。
Connected?
wrong !!