欢迎来到天天文库
浏览记录
ID:37712439
大小:37.50 KB
页数:8页
时间:2019-05-29
《oracle存储过程调用java class类》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、oracle存储过程调用javaclass文章分类:Java编程http://blog.csdn.net/Phoenix_99/archive/2009/11/27/4886907.aspx一、如何创建java存储过程?通常有三种方法来创建java存储过程。1.使用oracle的sql语句来创建:e.g.使用createorreplaceandcompilejavasourcenamed""as 后边跟上java源程序。要求类的方法必须是publicstatic的,才能用于存储过程。SQL>createorreplaceandc
2、ompilejavasourcenamed"javademo1" 2 as 3 importjava.sql.*; 4 publicclassJavaDemo1 5 { 6 publicstaticvoidmain(String[]argv) 7 { 8 System.out.println("hello,javademo1"); 9 }10 }11 /Java已创建。SQL>showerrorsjavasource"javademo1"没有错误。SQL>createorreplaceprocedurejavademo1 2 as 3 languag
3、ejavaname''JavaDemo1.main(java.lang.String[])''; 4 /过程已创建。SQL>setserveroutputonSQL>calljavademo1();调用完成。SQL>calldbms_java.set_output(5000);调用完成。SQL>calljavademo1();hello,javademo1调用完成。SQL>calljavademo1();hello,javademo1调用完成。2.使用外部class文件来装载创建e.g.这里既然用到了外部文件,必然要将class文件放到oracleS
4、erver的某一目录下边。publicclassOracleJavaProc{ publicstaticvoidmain(String[]argv) { System.out.println("It''saJavaOracleprocedure."); }}SQL>grantcreateanydirectorytoscott;授权成功。SQL>connscott/tiger@iihero.oracledb已连接。SQL>createor replace directory test_dir as ''d:oracle
5、'';目录已创建。SQL>createorreplacejavaclassusingbfile(test_dir,'OracleJavaProc.class') 2 /Java已创建。SQL>createorreplaceproceduretestjavaprocaslanguagejavaname''OracleJavaProc.main(java.lang.String[])''; 2 /过程已创建。SQL>calltestjavaproc();调用完成。SQL>executetestjavaproc;PL/SQL过程已成功完成。SQL>sets
6、erveroutputonsize5000SQL>calldbms_java.set_output(5000);调用完成。SQL>executetestjavaproc;It''saJavaOracleprocedure.3.我推荐的一种方法,直接使用loadjava命令远程装载并创建。 先创建一个类,e.g.importjava.sql.*;importoracle.jdbc.*;publicclassOracleJavaProc...{ //Addasalgradetothedatabase. publicstaticvoidaddSal
7、Grade(intgrade,intlosal,inthisal)...{ System.out.println("CreatingnewsalgradeforEMPLOYEE..."); try...{ Connectionconn= DriverManager.getConnection("jdbc:default:connection:"); Stringsql= "INSERTINTOsalgrade"+ "(GRADE,LOSAL,HIS
8、AL)"+ "VALUES(?,?,?)"; PreparedStatem
此文档下载收益归作者所有