千家信息网

SQL 基础之索引、闪回、临时表(十八)

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,创建索引:自动- 创建 PRIMARY KEY- 创建 UNIQUE KEY手动- CREATE INDEX 语句- CREATE TABLE 语句create table 语句中 create in
千家信息网最后更新 2026年11月01日SQL 基础之索引、闪回、临时表(十八)

创建索引:

自动

- 创建 PRIMARY KEY

- 创建 UNIQUE KEY


手动

- CREATE INDEX 语句

- CREATE TABLE 语句


create table 语句中 create index


create table new_emp (employee_id number(6) primary key using index

(create index emp_id_idx on

new_emp(employee_id)),

first_name varchar2(20),

last_name varchar2(25));


select index_name, table_name from user_indexes where table_name = 'new_emp';


基于函数的索引

  • 基于函数的索引就是一个基于表达式的索引

  • 索引表达式由列、常量、SQL 函数和用户自定义函数构成的


create index upper_dept_name_idx on dept2(upper(department_name));


select * from dept2 where upper(department_name) = 'SALES';


删除索引

使用 DROP INDEX 命令从数据字典中删除索引:

drop index index;

从数据字典中删除 UPPER_DEPT_NAME_IDX 索引:

drop index upper_dept_name_idx;

删除索引,您必须是索引的拥有者或者有 DROP ANY INDEX权限


drop table dept80 purge;


FLASHBACK TABLE 语句

  • 一条语句就可以恢复到指定时间点。

  • 恢复表中的数据以及相关的索引和约束。

  • 可以根据某一时间点或者系统改变号(SCN) 来恢复表。


表意外修改的修复工具:

- 表恢复到一个较早的时间点

- 优点:易用性、可用性、快速执行

- 执行到位(Is performed in place)


语法:

flashback table[schema.]table[,

[ schema.]table ]...

to { timestamp | scn } expr

[ { enable | disable } triggers ];


示例:

drop table emp2;

select original_name, operation, droptime from recyclebin;

flashback table emp2 to before drop;


临时表

创建临时表

create global temporary table cart on commit delete rows;


create global temporary table today_sales

on commit preserve rows as

select * from orders

where order_date = sysdate;


外部表

为外部表创建目录

创建 DIRECTORY对象,对应外部数据源所在的文件系统上的目录。

create or replace directory emp_diras '/.../emp_dir';

grant read on directory emp_dir to ora_21;


创建外部表

create table

( , ... )

organization external

(type

default directory

access parameters

(...) )

location ('')

reject limit [0 | | unlimited];


使用ORACLE_LOADER 驱动创建外部表

create table oldemp (

fname char(25), lname char(25))

organization external

(type oracle_loader

default directory emp_dir

access parameters

(records delimited by newline

nobadfile

nologfile

fields terminated by ','

(fname position ( 1:20) char,

lname position (22:41) char))

location ('emp.dat'))

parallel 5

reject limit 200;


查询外部表

select * from oldemp

使用ORACLE_DATAPUMP驱动创建外部表:

create table emp_ext

(employee_id, first_name, last_name)

organization external

(

type oracle_datapump

default directory emp_dir

location

('emp1.exp','emp2.exp')

)

parallel

as

select employee_id, first_name, last_name

from employees;

索引 语句 函数 数据 字典 时间 目录 系统 表达式 驱动 优点 可用性 命令 对象 就是 工具 常量 所在 手动 拥有者 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 花魁咖啡 中国互联网科技工作委员会毛军 互联网科技logo设计 上海万想互联网科技 佰商互联网科技有限公司 哈尔滨秒房互联网科技有限公司 互联网科技公司的市场部门 成都铂石互联网科技做什么的 科技互联网大厂 彤创互联网科技有限公司 洛阳共同富裕互联网科技有限公司 长沙茂晟互联网科技有限公司 四川慕妮娅互联网科技有限公司 工业互联网山东科技大学 深圳互联网科技的发展 广州千川互联网科技有限公司 互联网科技数字货币 马化腾互联网科技教学 玉溪新华互联网科技怎么选 杭州融税互联网科技有限公司 小米移动互联网科技园 互联网科技公司起名 圆梦互联网科技 互联网巨头反垄断金融科技 朗新科技与工业互联网 现代科技和互联网有关系吗 互联网与数字科技关系 互联网科技大佬云集 网互联网络科技 互联网 科技节活动 微视频大赛
0