数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

在存储过程中连接远程数据库并进行操作


发布日期:2022年02月16日
 
在存储过程中连接远程数据库并进行操作

我们有时候需要在本地数据库的存储过程中或者在其他SQL语句中要访问一个远程数据库我们可以这样做

在存储过程中连接远程数据库并进行操作

查看远程数据库的相关数据

SERVICE_NAME

两种方式:

第一种 more $ORACLE_HOME/network/admin/tnsnameora

一般是数据库的SID

第二种 echo $ORACLE_SID

修改本地数据库的

vi $ORACLE_HOME/network/admin/tnsnameora

添加如下

DBLINK =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 远程数据库地址hotname)(PORT = ))

)

(CONNECT_DATA =

(SERVICE_NAME = 远程数据库的SERVICE_NAME)

)

)

测试连接是否成功

在本地数据库运行

tnsping DBLINK

如果成功可以再使用:

sqlplus username/password@DBLINK

成功进入代表配置成功

在本地数据库中创建远程连接

create database link mylink connect to 用户名 identified by 密码 using DBLINK;

运行如下检查连接是否已经创建

select * from user_db_links

在存储过程中应用

CREATE OR REPLACE PROCEDURE remoteAccess AS

TYPE t_ReadUser IS REF CURSOR;

v_CursorVar t_ReadUser;

DECOUNT NUMBER();

Begin

SELECT * FROM 表明@mylink;

其他操作

dbms_outputput_line(END);

EXCEPTION

WHEN OTHERS THEN

dbms_outputput_line(SQLERRM);

ROLLBACK;

END;

/

SHOW ERRORS;

上一篇:Oracle 10g学习手册2:安装与构建三(图)

下一篇:oracle分页详解(rownum与orderby)