Oracle SQL Developer DDL 同时处理多个模式



我是Oracle SQL Developer的新手(使用约1个月(,一直使用Toad。 我有 2 个几乎相同的模式设置 - 一个用于测试旧代码,一个用于开发修改版本。我设置了 2 个不同的连接 - 每个架构一个,每个连接都有单独的用户名。

但是,当我从一个连接的架构中删除表或列时,它也会在另一个连接中删除或更改。

如果我右键单击"连接资源管理器"面板中的表或字段,或者打开保存到磁盘的 SQL 脚本,则会发生这种情况。如果我打开一个SQL脚本,我甚至会看到一个弹出窗口,询问我使用什么连接,但如果我选择一个,它仍然会对两者进行更改。 即使我只打开了两个连接中的一个,脚本仍然会更改两个连接中的设计。

我可以确保仅对两者之一进行更改的唯一方法是右键单击资源管理器面板中的连接名称,然后打开一个新的 SQL 工作表。然后,工作表以连接命名,并对其进行更改。

这不是我所期望的行为,我面临着许多小时的工作,才能将 2 个架构的定义恢复到我需要的位置。 我想知道我是否缺少一些关键概念或区别,或者是否有某种方式

设置数据库可以实现这一目标。

如果您从未找到问题的答案。 这是我的理解:数据库可能具有多个架构。 架构不是一个单独的数据库,它是该数据库中对象的分组。 如果您在一个架构中更改某些内容,那么您实际上是在数据库中更改它,而不仅仅是架构。 我希望这有所帮助。

您只是想在一个架构中测试内容吗? 听起来您可能想要一个数据库和一个测试数据库。 您可以在 TEST 数据库中测试任何您想要的内容,并且永远不会让它更改真正的数据库。

最新更新