PL/SQL 在脚本开头设置一个 link 作为默认值
PL/SQL set a link as default at the begining of the script
我需要在脚本的开头 select 一个 link。通常我们做 select links 如下,
begin
select * from v$database@linkname;
end;
但现在我需要 select 开头的 link 是这样的,
begin
select_link 'linkname';
select * from v$database;
end;
谢谢!
select * from v$database@linkname;
您不能像 PL/SQL 那样简单地使用 SELECT 语句。它需要一个 INTO 子句。
如果我理解正确;y,您想要参数化 DATABASE LINK。恐怕您需要 (ab) 使用 dynamic SQL.
例如,
SQL> var cur refcursor
SQL> DECLARE
2 var_link varchar2(20);
3 BEGIN
4 var_link:='@your_db_link';
5 OPEN :cur FOR 'SELECT * FROM dual'||var_link;
6 END;
7 /
PL/SQL procedure successfully completed.
SQL> print cur
D
-
X
SQL>
我需要在脚本的开头 select 一个 link。通常我们做 select links 如下,
begin
select * from v$database@linkname;
end;
但现在我需要 select 开头的 link 是这样的,
begin
select_link 'linkname';
select * from v$database;
end;
谢谢!
select * from v$database@linkname;
您不能像 PL/SQL 那样简单地使用 SELECT 语句。它需要一个 INTO 子句。
如果我理解正确;y,您想要参数化 DATABASE LINK。恐怕您需要 (ab) 使用 dynamic SQL.
例如,
SQL> var cur refcursor
SQL> DECLARE
2 var_link varchar2(20);
3 BEGIN
4 var_link:='@your_db_link';
5 OPEN :cur FOR 'SELECT * FROM dual'||var_link;
6 END;
7 /
PL/SQL procedure successfully completed.
SQL> print cur
D
-
X
SQL>