Pl-Sql 用户连接

Pl-Sql User Connection

我在工作中一直在使用 oracle。但我一直在使用 MS。现在我对 User-Shema 结构有疑问。我尝试使用 sql 查询创建 table,但是 table 是在我想要的其他地方创建的。 (我已经创建了一个名为 LPA 的用户)我刚刚编写了查询,table 在 (GeneralDatabase) Tablespaces->Users->(Here) 中。我想在 LPA 架构中的 table 文件夹下创建一个 table。我一直在寻找它,但我找不到它。所以需要一些帮助。

PS:我发现我需要与用户联系,而不是用 TS_LPA 写查询(那是我的 table 空间)。但是我也无法连接到用户LPA。(可以说这是我的第一个问题)

连接 LPA 用户。

在 table 名称之前指定架构名称。

create table LPA.tbl_name(col1 datatype1,....);

在 Oracle 中没有 "dbo" 或默认模式,如果这正是您要查找的内容。连接(登录)数据库时必须指定目标用户帐户,该帐户将用作所有后续操作的默认模式。 (这类似于 Linux 中的主目录,如果我以 williamr 身份登录并创建一个文件,它将属于 williamr 而不是某个通用默认帐户。)

在你的情况下,我怀疑你是以 SYS 或类似的身份连接的,在这种情况下,你的 table 现在属于 SYS(或你连接的任何人)。您需要放下它并重试。

如果您出于某种原因不想 post 最初用于连接的连接字符串,请执行以下查询以查看您当前的架构:

select user, sys_context('userenv','current_schema') from dual;

(通常 usersys_context('userenv','current_schema') 是一样的,但值得仔细检查。)

在 PL/SQL Developer 中,您只能从命令 window(不是 SQL window)发出 connect 命令。或者,您可以使用 'log on' 菜单工具,或从菜单中使用 Session > Set Main Connection,或者(如果您想稍后再使用它,最好)Tools > Define Connections,它有一个 'Test...' 按钮来验证一个新的连接。您需要用户名、密码和数据库服务名称(不仅仅是用户名和密码)。