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

解决方案 »

  1.   

     database link ,
    两个数据库之间建立的连接,通过数据库连接可以在一个库访问另一个库的对象
      

  2.   

    google下dblink就知道了
    gwlk
    --不是用户名 是 网络服务名 
    给你用username/password@servername 这个@后的一样
      

  3.   

    -- 请参考: 
    http://dev.yesky.com/137/7513137.shtml
      

  4.   

    此乃DB_LINK 也作用:将多个oracle数据库逻辑上看成一个数据库,也就是说在一个数据库中可以操作另一个数据库中的对象简易语法:
    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';
      

  5.   

    DBLink,di_zb_invite@gwlk中gwlk是在DBLink中创建的一个服务名,你可以理解为一个数据库,因为它是远程的数据库,gwlk是这个远程数据库的一个标识,创建DataBaseLink的目的是方便远程数据库的操作。