我是Oracle SQL Developer的新手(大约使用1个月),一直使用Toad。我有两个几乎相同的架构设置 - 一个用于测试旧代码,一个用于开发修改版本。我设置了2个不同的连接 - 每个模式一个,每个模式都有单独的用户名。
但是当我在一个连接中从架构中删除一个表或列时,它也会在另一个连接中被删除或更改。
如果我右键单击Connection explorer面板中的表或字段,或者我打开保存到磁盘的SQL脚本,则会发生这种情况。如果我打开一个SQL脚本,我甚至会看到一个弹出窗口,询问我要使用什么连接,但如果我选择一个,它仍会对两者进行更改。即使我只打开了两个连接中的一个,脚本仍然会改变两个连接中的设计。
我唯一可以确定对其中一个进行更改的方法是右键单击Explorer面板中的连接名称,然后打开一个新的SQL工作表。然后为连接命名工作表,并对其进行更改。
这不是我期望的行为,而且我正面临着许多工作时间将2架构的定义带回到我需要的位置。我想知道是否存在一些我缺少的关键概念或区别,或者是否有某种方式设置了数据库以实现这一点。
答案 0 :(得分:0)
如果您从未找到问题的答案。这是我的理解: 数据库可能有几个模式。模式不是单独的数据库,它是该数据库中的一组对象。如果在一个模式中更改某些内容,则实际上是在数据库中更改它,而不仅仅是模式。我希望这会有所帮助。
您是否只是尝试在一个架构中测试内容?听起来你可能想拥有一个数据库和一个测试数据库。您可以在TEST数据库中测试您想要的任何内容,并且永远不会更改真实数据库。