数据库链的使用

来源:互联网 发布:网络科学导论 pdf下载 编辑:程序博客网 时间:2024/06/16 17:23


创建数据库链
CREATE  DATABASE LINK "DBLINK"  CONNECT TO "garrey2" 
    IDENTIFIED BY "123123"  
    USING 'server2'
    --garrey2:是目的数据库的用户名
    --123123:当然是密码了
    --server2:是另一个数据库的服务名

使用数据库链就能让oracle帮你管理总的得数据库连接,你只需要在Webapp中创建一个
数据源就可以了。


1 调用存储过程
                  //后两个参数是 OUT 类型的
                  String sql="{call  /"garrey/"./"PROC_MYPROC1/"(?,?,?,?,?)}";
                  CallableStatement  cs=getConnection().prepareCall(sql);
                  
                  int i = 1;
                  cs.setInt(i++,1);
                  cs.setString(i++,"String arg1");
                  cs.setString(i++,"String arg2");
                  cs.registerOutParameter(i++, java.sql.Types.INTEGER);
                  cs.registerOutParameter(i++, java.sql.Types.INTEGER);

                  cs.execute();
                  int result=cs.getInt(i-1);
2 通过数据库链调用另一台服务器的存储过程
系统中有一个指向令一服务器的数据库链:dblink.
把语句改为:String sql="{call  /"garrey2/"./"PROC_MYPROC2/"@dblink(?,?,?,?,?)}";
即可。
3 通过数据库链调用另一台服务器的表
String sql = " INSERT INTO Test_Table@dblink "
+ " (ID,colum2,colum3)"
+ " VALUES (ID_SECQUENCE.nextVal@dblink, ?, ?) ";