1.向ORACLE里導入SYBASE JDBC 的驅動JAR。
使用語言LOADJAVA。
例如:SQL> call dbms_java.loadjava (?-r -install -v -s -g public -genmissing
?? absolute path to J2EE_HOME/lib/j2ee.jar?);
具體可以參考 http://www.stanford.edu/dept/itss/docs/oracle/10g/java.101/b12021/intro.htm
2.導入后在PL/SQL DEVELOPER的JAVA SOURCE里面新建所用的JAVA CLASS ,一般采用外部調試好的JAVA ,COPY即可。
create or replace and compile java source named ErpToWms as
import java.sql.*;
import java.util.*;
public class ErpToWms {
?public static String? dd()throws Exception{
??ResultSet rs=null;
??Statement stmt=null;
??Connection conn=null;
??try{
??Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance();
??String url ="jdbc:sybase:Tds:192.168.0.206:4000/WMS";//myDB為你的數據庫名
??Properties sysProps = System.getProperties();
??sysProps.put("user","sa");
??sysProps.put("password","");
?? conn= DriverManager.getConnection(url, sysProps);
?? stmt = conn.createStatement();
??String strSql = "select Count(*) from BARCODE t";
?? rs = stmt.executeQuery(strSql);
??if (rs.next()) {
???System.out.println(rs.getString(1));
??}
??return rs.getString(1);
??}catch(Exception e){
???e.printStackTrace();
???return "";
??}finally{
??rs.close();
??stmt.close();
??conn.close();
??}
??}
??? }
3.建立所對應的procedure或者funtion, 關鍵是看JAVA SOURCE的返回值而定。
例如 Function寫法:
create or replace function getDataFromWms return varchar2 is
? language java name 'ErpToWms.dd() return String';
4.最后寫一個簡單的procedure調用funtion.OK,搞定
有點麻煩的地方,請糾正。
使用語言LOADJAVA。
例如:SQL> call dbms_java.loadjava (?-r -install -v -s -g public -genmissing
?? absolute path to J2EE_HOME/lib/j2ee.jar?);
具體可以參考 http://www.stanford.edu/dept/itss/docs/oracle/10g/java.101/b12021/intro.htm
2.導入后在PL/SQL DEVELOPER的JAVA SOURCE里面新建所用的JAVA CLASS ,一般采用外部調試好的JAVA ,COPY即可。
create or replace and compile java source named ErpToWms as
import java.sql.*;
import java.util.*;
public class ErpToWms {
?public static String? dd()throws Exception{
??ResultSet rs=null;
??Statement stmt=null;
??Connection conn=null;
??try{
??Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance();
??String url ="jdbc:sybase:Tds:192.168.0.206:4000/WMS";//myDB為你的數據庫名
??Properties sysProps = System.getProperties();
??sysProps.put("user","sa");
??sysProps.put("password","");
?? conn= DriverManager.getConnection(url, sysProps);
?? stmt = conn.createStatement();
??String strSql = "select Count(*) from BARCODE t";
?? rs = stmt.executeQuery(strSql);
??if (rs.next()) {
???System.out.println(rs.getString(1));
??}
??return rs.getString(1);
??}catch(Exception e){
???e.printStackTrace();
???return "";
??}finally{
??rs.close();
??stmt.close();
??conn.close();
??}
??}
??? }
3.建立所對應的procedure或者funtion, 關鍵是看JAVA SOURCE的返回值而定。
例如 Function寫法:
create or replace function getDataFromWms return varchar2 is
? language java name 'ErpToWms.dd() return String';
4.最后寫一個簡單的procedure調用funtion.OK,搞定
有點麻煩的地方,請糾正。