[英]Are connection specific variables in Oracle SQL Developer possible?
我正在使用Oracle SQL Developer。
我有两个连接,我经常使用两个基本相同但命名不同的模式,分别对Foo和Bar连接说FOO
和BAR
。 我的查询基本上是这样的...
select Stuff from FOO.CoolTable; -- For Foo connection
select Stuff from BAR.CoolTable; -- For Bar connection
我最终要做的是在切换连接(或手动来回切换)后,同时编写并在需要的那一项上按Ctrl + Enter 。
我想知道的是,是否有某种方法可以特定于连接的某种变量,因此我只能编写一个,当我运行查询时,它会根据连接选择正确的模式。
像这样:
select Stuff from <my_var>.CoolTable;
其中<mr_var>
读为Foo连接的文本“ FOO
”和Bar连接的“ BAR
”。
如果有助于澄清,则类似于环境变量的想法。
我认为sqldeveloper中没有任何您需要的东西。
但是,您可以在数据库上使用登录触发器来为您的登录设置默认模式。 这样,您就可以在不使用限定模式名称的情况下触发查询,只需: select Stuff from CoolTable
设置登录触发器: 每个用户默认方案的Oracle设置(不更改会话)
那替代变量呢?
在第一个连接中,只需执行以下操作:
define myschema = foo
在第二个连接中:
define myschema = bar
该查询可能如下所示:
select * from &myschema..tablename;
我已经在SQL Developer上对其进行了测试,并且它在&myschema
和表名之间需要两个点,当我仅使用一个点时出现语法错误,我不知道为什么。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.