在 Aqua Data Studio 中,您可以激活 Parameterized Scripts 的设置,这将提示您为脚本中包含的任何变量输入一个值,写为 &[variable name]。
我想在我的 ADS 脚本中使用一个变量,但我不想使用参数化脚本,因为我将导出这个脚本以在其他地方运行。我想动态设置和使用变量的值。
我知道可以像这样在 ADS 中声明和打印变量,而无需使用参数化脚本:
declare var1 varchar(20) := 'Hello world!';
begin
DBMS_OUTPUT.put_line(var1);
end;
但是每当我尝试在实际查询中使用该变量时,一切都会中断。
前任。
declare var1 varchar(20) := 'Jeremiah';
begin
select * from PEOPLE where FIRST_NAME = &var1;
end;
这是错误消息:
[错误] 脚本行:1-4 -------------- ORA-06550:第 0 行,第 0 列:PLS-00801:内部错误 [ph2csql_strdef_to_diana:bind] ORA-06550:第 3 行,第 19 列:PL/SQL:ORA-06544:PL/SQL:内部错误,参数:[ph2csql_strdef_to_diana:bind]、[0]、[0]、[]、 []、[]、[]、[] ORA-06550:第 3 行,第 5 列:PL/SQL:忽略 SQL 语句脚本第 1 行,语句第 1 行,第 0 列
有什么办法可以在我的脚本中使用该变量?或者我是否受到使用 ADS 的限制?