小编Cat*_*lin的帖子

Oracle SQL - 检查 SQL 查询中缺失的索引

我需要检查查询中是否缺少一个或多个索引。

为了检查表中的索引,我使用语法:

SELECT index_name
     , column_position
     , column_name
  FROM user_ind_columns
 WHERE table_name = 'table_name'
 ORDER BY index_name, COLUMN_POSITION;

 SELECT index_name 
 FROM user_indexes
 WHERE table_name = 'table_name';
Run Code Online (Sandbox Code Playgroud)

是否可以使用程序或 SQL 脚本自动查找查询中是否缺少索引并显示它以创建它们?

谢谢!

sql oracle indexing plsql

4
推荐指数
2
解决办法
7796
查看次数

当对象更改时,Oracle 同义词是否需要重新创建?

我有 2 张桌子:

  • table1具有同义词架构:userA.table1userB.table1
  • 表2

我用过了:

  • 更改表table1重命名为table1_old
  • ALTER TABLE table2重命名为table1 ;

有必要使用 drop、create、replace SQL 语法重新创建同义词,还是可以安全地按原样使用同义词而不重新创建它?

sql oracle rename

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

Oracle 查询 all_tab_columns.data_default(类型 LONG)

我已经运行了这个查询:

SELECT
    OWNER,
    TABLE_NAME,
    COLUMN_NAME,
    DATA_TYPE,
    DATA_LENGTH,
    (CASE
        WHEN DATA_PRECISION IS NULL THEN 0
        ELSE DATA_PRECISION
     END) DATA_PRECISION,
    (CASE
        WHEN DATA_SCALE IS NULL THEN 0
        ELSE DATA_SCALE
     END) DATA_SCALE,
    NULLABLE,
    COLUMN_ID
    DEFAULT_LENGTH,
    DATA_DEFAULT,
    (CASE
        WHEN DATA_DEFAULT IS NULL THEN '0'
        ELSE DATA_DEFAULT
     END) DATA_DEFAULT1
FROM 
    all_tab_columns
WHERE 
    table_name LIKE 'TABLE1';
Run Code Online (Sandbox Code Playgroud)

但它在 column 引发错误DATA_DEFAULT

ORA-00932:不一致的数据类型:预期的 CHAR 得到了 LONG
00932。00000 - “不一致的数据类型:预期的 %s 得到了 %s”

我该如何解决?

谢谢!

sql oracle

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

Oracle PL/SQL修改列DEFAULT_LENGTH属性

我在下面选择了属性DEFAULT_LENGTH:

SELECT 
  TABLE_NAME,
  COLUMN_NAME,
  DATA_DEFAULT,
  DEFAULT_LENGTH
FROM all_tab_columns
WHERE TABLE_NAME LIKE 'TEST2';
Run Code Online (Sandbox Code Playgroud)

为了更改DATA_DEFAULT,我使用了以下语法:

ALTER TABLE TEST2 MODIFY (COL1 DEFAULT 'en');
Run Code Online (Sandbox Code Playgroud)

如何使用类似的alter option语法DEFAULT_LENGTH进行更改?

谢谢!

oracle data-dictionary

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

PLSQL Developer从GUI绑定变量,就像Oracle SQL Developer一样

我如何从GUI中绑定PLSQL Developer中的变量,就像Oracle PL/SQL Developer一样?

示例:select:来自dual的变量; 在此输入图像描述

谢谢!

plsqldeveloper

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

标签 统计

oracle ×4

sql ×3

data-dictionary ×1

indexing ×1

plsql ×1

plsqldeveloper ×1

rename ×1