我有一个带有多个用户的oracle数据库(其他用户?),我想导入一个.sql文件中的模式。
我的疑问是如何在我的.sql文件中指定导入是针对特定用户的。
提前谢谢。
答案 0 :(得分:0)
检查你的sql文件。如果其中的命令指定了模式名称,那么在将其导入到不同的模式之前,您需要对其进行修改。
例如,它是否有这样的命令:
CREATE TABLE scott.mytable (...)
或者喜欢:
CREATE TABLE mytable (...)
如果架构名称(例如“scott”)已经过硬编码,那么您需要编辑sql脚本以小心删除它。
如果没有,那么您只需要以目标用户名登录并运行您的sql脚本。
答案 1 :(得分:0)
这取决于您的SQL文件的内容。你没有进行导入,你正在运行一个SQL文件,这有点像“运行脚本”:它可以包含任何内容。所以,我们很难从这里说出你应该如何运行一个文件,我们不知道它是什么内容。有许多方法可以定义对象的所有者。它可以是显式的,也可以是隐式的。那么,首先要检查的是:脚本中是否指定了用户(模式)?如果是,它在哪里指定,以及如何?
在最简单的情况下,人们只会在当前架构中编写一个连接和安装对象的脚本。有时即使没有连接。因此,在这种情况下,您可以将脚本调用为您希望在其中创建对象的任何用户。
完全不同的是,您可以在每个对象引用中指定给定所有者的脚本。在这种情况下,您可能最终会进行全局搜索和替换。
所以,让我们知道你的脚本是如何工作的,我们可以详细说明。