龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 数据库类 > Oracle 技术 >

Oracle存储过程中应注意的事项

时间:2011-04-12 23:18来源:未知 作者:admin 点击:
分享到:
Oracle 存储过程在实际中的应用比例还是占为多数的,如果你对这一技术,心存好奇的话,以下的文章将会揭开它的神秘面纱。你可以通过以下的文章对其的实际应用与功能有所了解,希

Oracle存储过程在实际中的应用比例还是占为多数的,如果你对这一技术,心存好奇的话,以下的文章将会揭开它的神秘面纱。你可以通过以下的文章对其的实际应用与功能有所了解,希望你在浏览完之后会有所收获。

无返回值的存储过程

存储过程为:

  1. CREATE OR REPLACE PROCEDURE TESTA
    (PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) AS  
  2. BEGIN   
  3. INSERT INTO HYQ.B_ID (I_ID,I_NAME) VALUES (PARA1, PARA2);  
  4. END TESTA;  

然后呢,在java里调用时就用下面的代码:

  1. package com.hyq.src;  
  2. import java.sql.*;  
  3. import java.sql.ResultSet;  
  4. public class TestProcedureOne {  
  5. public TestProcedureOne() {  
  6. }  
  7. public static void main(String[] args ){  
  8. String driver = "oracle.jdbc.driver.OracleDriver";  
  9. String strUrl = "jdbc:oracle:thin:@127.0.0.1:1521: hyq ";  
  10. Statement stmt = null;  
  11. ResultSet rs = null;  
  12. Connection conn = null;  
  13. CallableStatement cstmt = null;  
  14. try {  
  15. Class.forName(driver);  
  16. conn = DriverManager.getConnection(strUrl, " hyq ", " hyq ");  
  17. CallableStatement proc = null;  
  18. proc = conn.prepareCall("{ call HYQ.TESTA(?,?) }");  
  19. proc.setString(1, "100");  
  20. proc.setString(2, "TestOne");  
  21. proc.execute();  
  22. }  
  23. catch (SQLException ex2) {  
  24. ex2.printStackTrace();  
  25. }  
  26. catch (Exception ex2) {  
  27. ex2.printStackTrace();  
  28. }  
  29. finally{  
  30. try {  
  31. if(rs != null){  
  32. rs.close();  
  33. if(stmt!=null){  
  34. stmt.close();  
  35. }  
  36. if(conn!=null){  
  37. conn.close();  
  38. }  
  39. }  
  40. }  
  41. catch (SQLException ex1) {  
  42. }  
  43. }  
  44. }  
  45. }  

当然了,这就先要求要建张表TESTTB,里面两个字段(I_ID,I_NAME)。上述的相关内容就是对Oracle存储过程的描述,希望会给你带来一些帮助在此方面。


 

精彩图集

赞助商链接