標籤:null block 迴圈 date() exception 行資料 try red 返回結果
在C#的方法中可以使用params Parameter[] values來動態擷取sql語句中的參數值數組。
Java中可以自己封裝出一個類似於C#的方法
1、擷取結果集
1 /** 2 * 擷取結果集 3 * @param sql SQL語句 4 * @param params SQL語句資料數組 5 * @return 結果集 6 */ 7 public static ResultSet getResultSet(String sql,Object[] params) { 8 ResultSet rs=null; 9 //從DButil擷取連線物件10 Connection conn=getConnection();11 try {12 //擷取PreparedStatement對象13 PreparedStatement ps= conn.prepareStatement(sql);14 //迴圈遍曆資料數組15 for(int i=0;i<params.length;i++) {16 ps.setObject(i+1, params[i]);17 }18 //返回結果集19 rs=ps.executeQuery();20 } catch (SQLException e) {21 // TODO Auto-generated catch block22 System.out.println(e.getMessage());23 return rs;24 }25 return rs;26 }
2、執行增刪改
1 /** 2 * 執行資料庫增刪改語句 3 * @param sql 資料庫執行語句 4 * @param params SQL語句資料數組 5 * @return 受影響行的數量 6 */ 7 public static int getUpdate(String sql,Object[] params) { 8 int n=0; 9 //從DButil擷取連線物件10 Connection conn=getConnection();11 PreparedStatement ps=null;12 try {13 //擷取PreparedStatement對象14 ps= conn.prepareStatement(sql);15 //迴圈遍曆資料數組16 for(int i=0;i<params.length;i++) {17 ps.setObject(i+1, params[i]);18 }19 n=ps.executeUpdate();20 } catch (SQLException e) {21 // TODO Auto-generated catch block22 e.printStackTrace();23 }24 return n;25 }
Java的sql動態參數