小编JTr*_*ant的帖子

使用索引加速连接

我知道使用索引可以帮助加速两个或多个表的连接。以下示例使用共享的 Department_id 列连接两个表 emps 和 depts:

select last_name, department_name 
from emps join depts 
using(department_id);
Run Code Online (Sandbox Code Playgroud)

我的问题是:对两个表之一上的 Department_id 列进行索引会加快此查询的速度,还是必须在两个表的两个 Department_id 列上创建索引才能看到性能的提高?

sql indexing

6
推荐指数
1
解决办法
5359
查看次数

无法使用 SID 连接到 SQL*Plus

我执行了以下查询来查找我作为系统连接到的数据库的 SID:

SQL> select sys_context('userenv','instance_name') from dual;

SYS_CONTEXT('USERENV','INSTANCE_NAME')
--------------------------------------------------------------
orcl
Run Code Online (Sandbox Code Playgroud)

然后我尝试使用以下命令连接到系统:

C:\>sqlplus system/system@orcl

SQL*Plus: Release 12.2.0.1.0 Production on Wed Aug 8 23:53:02 2018

Copyright (c) 1982, 2016, Oracle.  All rights reserved.

ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified
Run Code Online (Sandbox Code Playgroud)

在指定 SID 的同时,如何以系统身份连接到数据库?

sql oracle

2
推荐指数
1
解决办法
1万
查看次数

如何将架构对象移动到不同的表空间

我使用的是 Oracle 数据库 12c。据我所知,表空间是一种逻辑存储单元,由一个或多个数据文件组成,其中存储有关架构对象的数据。我也了解如何创建表空间。

我的问题是:哪些模式对象可以分配给不同的表空间?我们如何使用 SQL 将这些对象分配到表空间?

编辑:

我发现要将表移动到不同的表空间,我们使用以下语法:

ALTER TABLE <TABLE NAME to be moved> MOVE TABLESPACE <destination TABLESPACE NAME>
Run Code Online (Sandbox Code Playgroud)

此外,要将相应的索引移动到表空间,我们在执行上述查询后使用以下语法:

alter index <owner>."<index_name>" rebuild;
Run Code Online (Sandbox Code Playgroud)

但是,是否还有更多架构对象可以移动到如上所述的表空间?

sql oracle tablespace

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

sql ×3

oracle ×2

indexing ×1

tablespace ×1