如何更改 sql developer 中的默认架构?

Posted

技术标签:

【中文标题】如何更改 sql developer 中的默认架构?【英文标题】:How do I change the default schema in sql developer? 【发布时间】:2013-06-28 18:42:33 【问题描述】:

在我与 SQL 开发人员链接到的数据库的表部分中,我没有看到任何表。数据库管理员说我需要更改 SQL 开发人员中的默认架构。我该怎么做?

【问题讨论】:

我多年前就申请了这个功能:apex.oracle.com/pls/apex/f?p=43135:7:0::NO:RP,7:P7_ID:2202。我早就意识到有时候你需要为好的软件付费:allroundautomations.com/plsqldevordering.html 【参考方案1】:
alter session set current_schema = otheruser; 

应该可以解决问题。

【讨论】:

这是每个人都会做的, 这似乎对我不起作用。我正在使用版本 4.0.2.15 这可能会更改您工作簿中的当前架构,但不会影响对象浏览器 - 所以我仍然无法正常浏览数据库。 这只是给出 SQLCODE=-104【参考方案2】:

只需右键单击创建的连接并选择“架构浏览器”,然后使用过滤器显示所需的连接。

干杯。

【讨论】:

此模式浏览器在 3.2.version 中不可用。如何在旧版本中启用【参考方案3】:

我不知道在 SQL Developer 中有什么方法可以做到这一点。在“其他用户”->“”中查看时,您可以看到所有其他模式及其对象(如果您具有正确的权限)。

在您的情况下,要么使用上述方法,要么为您想要工作的架构创建一个新连接,或者为您希望访问的所有表创建同义词。

如果您使用 SQL*Plus,发出 ALTER SESSION SET CURRENT_SCHEMA=MY_NAME 将设置您当前的架构(这可能是您的 DBA 的意思)。

【讨论】:

“其他用户”访问有效,但不是很舒服。【参考方案4】:

这不会改变 Oracle Sql Developer 中的默认模式,但我想指出,快速查看另一个用户模式很容易,右键单击数据库连接:

选择用户以查看该用户的架构

【讨论】:

这是哪个版本的 SQL Developer? 啊,老的 AAAAAA_ 排序方法【参考方案5】:

或者,只需选择显示在当前架构左侧底部的元素之一“其他用户”。

从可用列表中选择您想要的架构。

【讨论】:

【参考方案6】:

我知道这是旧的但是......

我发现了这个:

http://javaforge.com/project/schemasel

从描述中可以看出,安装插件后,如果您在逻辑连接名称后面加上方括号中的架构,则默认情况下它应该连接到架构。

可以,但对象浏览器不可以。

哦,好吧。

【讨论】:

Schemasel 扩展不再可用,因为 Javaforge 已更改为(购买?)Code Beamer,我找不到任何其他位置。即使它可用,它也是为 SQL Developer 3 构建的,并且与 SQL Developer 4 不兼容。不幸的是,即使 SQL Developer 4 应该支持扩展,Oracle 扩展页面 (oracle.com/technetwork/developer-tools/sql-developer/…) 也没有列出任何 SQL 扩展开发人员 4. 显然对该产品没有太大兴趣。我可以建议转移到 SQuirreL SQL...【参考方案7】:

在 ORACLE 中创建新用户时,也会自动创建一个空的表和视图工作区。该工作区域称为“架构”。由于用户和模式之间的紧密耦合关系,这些术语经常被用作同义词。默认情况下,SQL Developer 将显示属于您连接的用户的空架构,如果它确实是空的。

但是,如果您点击展开树中标题为“其他用户”的部分,您将看到您的用户有权访问的其他用户/架构。如果您选择正确的用户/模式,您可以在那里找到您正在寻找的表和视图。一个对象只存在于拥有它的架构中。

不过,如果应用程序允许我们选择更靠近树根的所需模式,而不是强迫我们去搜索它,那就太好了。其他答案提供了解决方法,例如:

    以所需用户/架构的身份登录。 使用不同的工具。 忽略树并只执行:alter session set current_schema = otheruser; 创建启动脚本以在每次加载应用程序时设置架构。

最后,我搜索并找到了另一个似乎可以解决这个特殊可用性问题的免费工具,称为DBeaver。

这有点令人困惑,因为模式这个词被重载了。 Schema 还可用于描述应用程序的数据库。为了更清楚,请阅读更多有关 ORACLE 上下文中使用的术语模式的信息。

【讨论】:

【参考方案8】:

如果您以 scott 身份登录,但希望查看 HR 架构的表,那么您需要更改会话“alter session set current_schema=HR;”

如果你一直这样做,那么你可以创建一个名为 login.sql 的启动脚本,其中包含上述命令,然后通过 Tool/Preferences/Database 告诉 SQL Developer 在启动时运行它

【讨论】:

【参考方案9】:

只需创建一个新连接(点击绿色加号)并输入您的 DBA 建议的新默认架构的架构名称和密码。您可以使用窗口右上角的下拉菜单在旧架构和新架构之间切换。

【讨论】:

假设您拥有要访问其架构的用户的密码。对我来说不是这种情况 - 我对其他架构有一些读/写访问权限,但没有其他架构用户的密码。【参考方案10】:

在您将权限授予指定用户后,您必须在过滤时执行此操作:

第一步:

第二步:

现在您将能够在将默认加载 Alter 会话更改为所需架构后显示表(在 LOG ON 后使用触发器)。

【讨论】:

不适合我 ? 我可以访问每个查询工作表的表,但在树下它们不可见

以上是关于如何更改 sql developer 中的默认架构?的主要内容,如果未能解决你的问题,请参考以下文章

如何更改sql server中的默认列值

如何更改 SQL Developer 的设置以正确识别当前版本的 SDK

windows7中如何更改safari中的默认用户代理? [关闭]

如何在运行时更改 Hibernate 的 SessionFactory 的默认架构设置?

如何使用SQL Developer创建数据库连接

如何更改 BigQuery 控制台(Web UI)中的默认选项,尤其是取消选中“使用旧版 SQL”?