oracle调用JAVA存储过程出错
在网上找到资料,模仿人家的步骤,先定义了一个Main.java文件,将程序参数写入一个已有文件中
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/**
*
* @author
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String args) {
// TODO code application logic here
String datas = "/home/oracle/test.txt";
File data = new File(datas);
try {
StringBuffer content = new StringBuffer();
content.append("Hello");
content.append(args);
FileWriter writer = new FileWriter(data,true);
writer.write(content.toString());
writer.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
然后使用loadjva -user user/pass@test -o -v -f -r /home/oracle/Main.java
提示导入JAVA程序成功
然后在sqlplus里创建一个存储过程
create or replace procedur file_test(name varchar2) as language java name 'Main.main(java.lang.String)';
/
这个时候出现 Warning:procedure created with compilation errors.
执行 show errors procedure file_test;
得到
0/0 PL/SQL:Compilation unit analysis terminated
1/55 PLS-00311:the declaration of "Main.main(java.lang.String)" is incomplete or malformed
不知道原因在什么地方啊
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
/**
*
* @author
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String args) {
// TODO code application logic here
String datas = "/home/oracle/test.txt";
File data = new File(datas);
try {
StringBuffer content = new StringBuffer();
content.append("Hello");
content.append(args);
FileWriter writer = new FileWriter(data,true);
writer.write(content.toString());
writer.flush();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
然后使用loadjva -user user/pass@test -o -v -f -r /home/oracle/Main.java
提示导入JAVA程序成功
然后在sqlplus里创建一个存储过程
create or replace procedur file_test(name varchar2) as language java name 'Main.main(java.lang.String)';
/
这个时候出现 Warning:procedure created with compilation errors.
执行 show errors procedure file_test;
得到
0/0 PL/SQL:Compilation unit analysis terminated
1/55 PLS-00311:the declaration of "Main.main(java.lang.String)" is incomplete or malformed
不知道原因在什么地方啊
...全文
相关推荐
Oracle存储过程详解[代码]
本文详细介绍了Oracle/PLSQL中存储过程的创建、调试及在Java中的调用方法。首先,文章阐述了存储过程的基本语法和创建步骤,包括参数定义、变量声明、SQL语句执行及异常处理。其次,通过实例展示了如何编写一个完整的存储过程,包括参数传递、变量赋值、条件判断和错误日志记录。接着,文章详细说明了存储过程的调试方法,包括编译、测试、单步调试和变量查看。此外,还介绍了在Java中调用存储过程的代码示例,包括连接创建、参数设置和执行过程。最后,文章总结了存储过程的注意事项和常见问题,如参数取值范围、异常处理、SELECT INTO语句的使用以及NULL值处理等。
DOA访问Oracle存储过程.rar_DOA_oracle_存储过程
DOA访问Oracle存储过程(使用DOA访问Oracle的存储过程更有效率、更方便)
Oracle存储过程学习经典[语法+实例+调用].
Oracle存储过程基础知识 Oracle存储过程的基本语法 Oracle存储过程的若干问题备忘 用Java调用Oracle存储过程总结 在存储过程中做简单动态查询 Oracle存储过程调用Java方法
Oracle经典语法的调用
Oracel数据库存储过程的调用,里面有一些实例可供参考
oracle存储过程(语法实例).pdf
oracle存储过程(语法实例).pdforacle存储过程(语法实例).pdforacle存储过程(语法实例).pdforacle存储过程(语法实例).pdforacle存储过程(语法实例).pdf


Java SE

