create or replace procedure bv1to1.syn_zb is
--招标同步
--DECLARE
--cursor cur_zb is select inviteid,syntype from di_zb_invite@gwlk where synflag = 0;
temp_orgid number(18);
v_account_id number;
v_select_into number;
v_user_id number;
v_pakage_code number;
v_bid_code number;
v_CREATE_ACCT_ID number;
v_create_user_id number;
v_bigdocid number;
v_BUNDLE_ID number;
v_BID_ID number;
v_InviteOrgID number;
v_invitepackgeid number;begin
--招标表 注意这个同步的表
for row_zb in (select rowid rid,
AGENTID,
inviteid,
AGENTLISTERID,
LISTERID,
INMAGORGID,
InviteOrgID
from DI_ZB_INVITE@gwlk
where synflag = 0
and syntype = 1) loop
--招标同步
--DECLARE
--cursor cur_zb is select inviteid,syntype from di_zb_invite@gwlk where synflag = 0;
temp_orgid number(18);
v_account_id number;
v_select_into number;
v_user_id number;
v_pakage_code number;
v_bid_code number;
v_CREATE_ACCT_ID number;
v_create_user_id number;
v_bigdocid number;
v_BUNDLE_ID number;
v_BID_ID number;
v_InviteOrgID number;
v_invitepackgeid number;begin
--招标表 注意这个同步的表
for row_zb in (select rowid rid,
AGENTID,
inviteid,
AGENTLISTERID,
LISTERID,
INMAGORGID,
InviteOrgID
from DI_ZB_INVITE@gwlk
where synflag = 0
and syntype = 1) loop
两个数据库之间建立的连接,通过数据库连接可以在一个库访问另一个库的对象
gwlk
--不是用户名 是 网络服务名
给你用username/password@servername 这个@后的一样
http://dev.yesky.com/137/7513137.shtml
CREATE [PUBLIC] DATABASE LINK dblink CONNECT TO user IDENTIFIED BY password USING ‘connect_string’;
DROP [PUBLIC] DATABASE LINK dblink;
注意:你必须有CREATE DATABASE LINK或CREATE PUBLIC DATABASE LINK的权限,另外,在你要连接的数据库上,你必须有CREATE SESSION的权限.语法解释:
dblink:以后在sql语句中使用的连接名, 在init.ora文件中,如果GLOBAL_NAMES=true,则这个dblink必须与数据库全局名(SELECT * FROM GLOBAL_NAME;)相同.为了方便,可以ALTER SYSTEM SET GLOBAL_NAMES=FALSE;
user和password:要连接的数据库的合法用户名和密码
connect_string:可以是经过Net Configuration Assistant配置的(tnsnames.ora)且经测试可以连接的别名,例如:orcl123,不过容易出问题,老提示出错:无法解析字符串.最好写成这种形式 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.78)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) )使用:
SELECT * FROM USER_TABLES@dblink;
UPDATE jobs@dblink SET min_salary = 3000 WHERE job_id = 'SH_CLERK';