步骤 :
1. --创建DBLink
create public database link testLink
connect to l2108 identified by websms
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.137.17.98)(PORT = 1521)))
(CONNECT_DATA = (SERVICE_NAME = inomc)))';
2. --实现远程调用(查询远程表corpmember)
select * from corpmember@testLink;
--实现存储过程远程调用(调用存储过程)
--无参数的 存储过程
proc_sync_corp@testLink;
--有参数存储过程
proc_sync_test(参数列表....)@testLink;
3. 关闭dblink.(每次连接使用后要记得关闭)
dbms_session.close_database_link('dblink名字');
--------------------- 语法----------------------------------
1. 创建dblink需要相应的权限
a)如果该用户本来就是拥有dba权限的用户,则表示该用户也拥有了创建dblink的权限!
b)如果该用户只是个普通用户,则需要拥有创建dblink的权限才行:
用sys登录pl/sql grant CREATE DATABASE LINK to 用户名;
2.创建dblink的语法
create database link dblink名connect to 用户名identified by 密码using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 远程IP)(PORT = 端口))) (CONNECT_DATA = (SERVICE_NAME = 数据库名)) )';
说明: 这只是创建一个最最简单的dblink语法,一般情况下,足够你对远程机器上的进行增删改查了!
3. 关闭dblink.(每次连接使用后要记得关闭)
dbms_session.close_database_link('dblink名字');
1. --创建DBLink
create public database link testLink
connect to l2108 identified by websms
using '(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.137.17.98)(PORT = 1521)))
(CONNECT_DATA = (SERVICE_NAME = inomc)))';
2. --实现远程调用(查询远程表corpmember)
select * from corpmember@testLink;
--实现存储过程远程调用(调用存储过程)
--无参数的 存储过程
proc_sync_corp@testLink;
--有参数存储过程
proc_sync_test(参数列表....)@testLink;
3. 关闭dblink.(每次连接使用后要记得关闭)
dbms_session.close_database_link('dblink名字');
--------------------- 语法----------------------------------
1. 创建dblink需要相应的权限
a)如果该用户本来就是拥有dba权限的用户,则表示该用户也拥有了创建dblink的权限!
b)如果该用户只是个普通用户,则需要拥有创建dblink的权限才行:
用sys登录pl/sql grant CREATE DATABASE LINK to 用户名;
2.创建dblink的语法
create database link dblink名connect to 用户名identified by 密码using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 远程IP)(PORT = 端口))) (CONNECT_DATA = (SERVICE_NAME = 数据库名)) )';
说明: 这只是创建一个最最简单的dblink语法,一般情况下,足够你对远程机器上的进行增删改查了!
3. 关闭dblink.(每次连接使用后要记得关闭)
dbms_session.close_database_link('dblink名字');