-
win 連接oracle查看全部
-
注意:一般不在存儲過程,存儲函數(shù)中不做提交和回滾 而是在調(diào)用的時候做提交或回滾查看全部
-
//釋放數(shù)據(jù)庫的資源 public static void release(Connection conn,Statement st,ResultSet rs){ if(rs != null){ try { rs.close(); } catch (SQLException e) { e.printStackTrace(); }finally{ rs = null; } } if(st != null){ try { st.close(); } catch (SQLException e) { e.printStackTrace(); }finally{ st = null; } } if(conn != null){ try { conn.close(); } catch (SQLException e) { e.printStackTrace(); }finally{ conn = null; } } } }查看全部
-
package demo.utils; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JDBCUtils { private static String driver ="oracle.jdbc.oracleDriver"; private static String url = "jbdc:oracle:thin:@192.168.1.114:1521:orcl"; private static String user = "scott"; private static String password = "tiger"; //注冊數(shù)據(jù)庫的驅(qū)動 static{ try { Class.forName(driver); //DriverManager.registerDriver(driver); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } //獲取數(shù)據(jù)庫鏈接 public static Connection getConnection(){ try { return DriverManager.getConnection(url,user,password); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; }查看全部
-
package demo.oracle; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.SQLException; import oracle.jdbc.OracleTypes; import demo.utils.JDBCUtils; public class TestProcedure { public void testProce(){ String sql = "{call queryempinform(?,?,?,?)}"; Connection conn = null; CallableStatement call = null; try { //得到一個鏈接 conn = JDBCUtils.getConnection(); //通過鏈接創(chuàng)建出statment call = conn.prepareCall(sql); //對于in參數(shù),賦值 call.setInt(1, 7839); //對于out參數(shù),申明 call.registerOutParameter(2, OracleTypes.VARCHAR); call.registerOutParameter(3, OracleTypes.NUMBER); call.registerOutParameter(4, OracleTypes.VARCHAR); //執(zhí)行調(diào)用 call.execute(); //去除結(jié)果 String name = call.getString(2); double sal = call.getDouble(3); String job = call.getString(4); System.out.println(name+"\t"+sal+"\t"+job); } catch (SQLException e) { e.printStackTrace(); }finally{ JDBCUtils.release(conn, call, null); } } }查看全部
-
create or replace procedure 過程名(參數(shù)列表) is begin end;查看全部
-
老師是趙強(qiáng)老師?查看全部
-
存儲過程查看全部
-
帶參數(shù)存儲過程查看全部
-
調(diào)用存儲過程: 1:exec 2:begin 過程名 注意:一般不在存儲過程,存儲函數(shù)中不做提交和回滾(他們能做) 示例查看全部
-
存儲過程查看全部
-
創(chuàng)建或者替代存儲過程: create [or replace] PROCEDURE 過程名(參數(shù)列表) AS PLSQL子程序體; 存儲過程怎么調(diào)用? 方法一:exec 存儲過程名(); 方法二:begin 存儲過程名(); end; /查看全部
-
decode函數(shù)也可以實現(xiàn)nvl函數(shù)功能, decode(pcomm,null,0);查看全部
-
調(diào)用: (1)exec 存儲過程名 ; (2)begin 存儲過程名 end;查看全部
-
CREATE OR REPLACE PROCEDURE queryempinform( eno IN NUMBER, pename OUT VARCHAR2, psal OUT NUMBER, pjob OUT VARCHAR2 ) AS BEGIN --得到該員工的姓名,月薪和職位 SELECT ename, sal, job INTO pename, psal, pjob FROM emp WHERE empno=eno; END;查看全部
舉報
0/150
提交
取消