oracle 12c创建归档,oracle 12c 数据归档 即Using In-Database Archiving feature
在oracle 12c 通过Using In-Database Archiving feature 特性,来启到分离在线数据和历史数据的作用,
即数据归档,应用可以有选择性的访问在线数据或者历史数据,要启用这个特性,在建表的时候启用ROW ARCHIVAL,
并操作ORA_ARCHIVE_STATE 这个隐藏字段,此外用户还可以指定会话级别的 ROW ARCHIVAL VISIBILITY为ACTIVE 或者ALL
active就是看到在线数据,ALL的话就是全部数据。
/* Set visibility to ACTIVE to display only active rows of a table.*/
ALTER SESSION SET ROW ARCHIVAL VISIBILITY = ACTIVE;
CREATE TABLE employees_indbarch
(employee_id NUMBER(6) NOT NULL,
first_name VARCHAR2(20), last_name VARCHAR2(25) NOT NULL,
email VARCHAR2(25) NOT NULL, phone_number VARCHAR2(20),
hire_date DATE NOT NULL, job_id VARCHAR2(10) NOT NULL, salary NUMBER(8,2),
commission_pct NUMBER(2,2), manager_id NUMBER(6), department_id NUMBER(4)) ROW ARCHIVAL;
INSERT INTO employees_indbarch(employee_id, first_name, last_name, email,
hire_date, job_id, salary, manager_id, department_id)
VALUES (251, 'Scott', 'Tiger', 'scott.tiger@example.com', '21-MAY-2009',
'IT_PROG', 50000, 103, 60);
INSERT INTO employees_indbarch(employee_id, first_name, last_name, email,
hire_date, job_id, salary, manager_id, department_id)
VALUES (252, 'Jane', 'Lion', 'jane.lion@example.com', '11-JUN-2009',
'IT_PROG', 50000, 103, 60);
/* Show all the columns in the table, including hidden columns */
SELECT SUBSTR(COLUMN_NAME,1,22) NAME, SUBSTR(DATA_TYPE,1,20) DATA_TYPE, COLUMN_ID AS COL_ID,
SEGMENT_COLUMN_ID AS SEG_COL_ID, INTERNAL_COLUMN_ID AS INT_COL_ID, HIDDEN_COLUMN, CHAR_LENGTH
FROM USER_TAB_COLS WHERE TABLE_NAME='EMPLOYEES_INDBARCH';
NAME DATA_TYPE COL_ID SEG_COL_ID INT_COL_ID HID CHAR_LENGTH
---------------------- -------------------- ---------- ---------- ---------- --- -----------
ORA_ARCHIVE_STATE VARCHAR2 1 1 YES 4000
EMPLOYEE_ID NUMBER 1 2 2 NO 0
FIRST_NAME VARCHAR2 2 3 3 NO 20
LAST_NAME VARCHAR2 3 4 4 NO 25
EMAIL VARCHAR2 4 5 5 NO 25
PHONE_NUMBER VARCHAR2 5 6 6 NO 20
HIRE_DATE DATE 6 7 7 NO 0
JOB_ID VARCHAR2 7 8 8 NO 10
SALARY NUMBER 8 9 9 NO 0
COMMISSION_PCT NUMBER 9 10 10 NO 0
MANAGER_ID NUMBER 10 11 11 NO 0
DEPARTMENT_ID NUMBER 11 12 12 NO 0
/* Decrease the ORA_ARCHIVE_STATE column size to improve formatting in queries */
COLUMN ORA_ARCHIVE_STATE FORMAT a18;
/* The default value for ORA_ARCHIVE_STATE is '0', which means active */
SELECT employee_id, ORA_ARCHIVE_STATE FROM employees_indbarch;
EMPLOYEE_ID ORA_ARCHIVE_STATE
----------- ------------------
251 0
252 0
/* Insert a value into ORA_ARCHIVE_STATE to set inactive */
UPDATE employees_indbarch SET ORA_ARCHIVE_STATE = '20' WHERE employee_id = 252;
/* Only active records are in the following query */
SELECT employee_id, ORA_ARCHIVE_STATE FROM employees_indbarch;
EMPLOYEE_ID ORA_ARCHIVE_STATE
----------- ------------------
251 0
/* Set visibility to ALL to display all records */
ALTER SESSION SET ROW ARCHIVAL VISIBILITY = ALL;
SELECT employee_id, ORA_ARCHIVE_STATE FROM employees_indbarch;
EMPLOYEE_ID ORA_ARCHIVE_STATE
----------- ------------------
251 0
252 20
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7199859/viewspace-2058720/,如需转载,请注明出处,否则将追究法律责任。
oracle 12c创建归档,oracle 12c 数据归档 即Using In-Database Archiving feature相关推荐
- oracle 9 创建数据库,Oracle 9i创建数据库(转)
Oracle 9i创建数据库(转)[@more@] 6.6.1 用[数据库配置助手]创建数据库 (1)出现如图6.18所示的[欢迎使用]界面. (2)出现如图6.19所示的[操作]界面. (3)出现如 ...
- oracle中创建游标,oracle 存储过程创建游标
Oracle与Sql Server差异点详解 1.create函数或存储过程异同点 Oracle 创建函数或存储过程一般是 create or replace -- SQL SERVER 则是在创建之 ...
- oracle+手工创建pfile,oracle 手工创建数据库
1, 创建pfile,通cat命令将以#和空格开头的行过滤掉,放到initSID.ora文件中 pfile文件格式为init(sid).ora cd $ORACLE_HOME/dbs cat init ...
- oracle mysql 创建表,Oracle 创建表用户、空间
oracle创建用户.表空间 无 /*查看表空间文件位置*/select *from dba_data_files;--创建arcgis 表空间.用户/*第1步:创建临时表空间 */create te ...
- oracle常用创建模式,ORACLE 常用操作命令
1.1导出 1.2导出使用程序有以下常用的命令参数参数 说明 USERID 确定执行导出实用程序的用户名和口令 BUFFER ...
- oracle批量创建序列号,Oracle数据库中创建并利用序列号生成ID
已经有了序列后,怎么样自动生成ID? 其实是用一条包含序列号的sql语句从dual表中查出的id再赋值给id 以下举两条实战的sql: select '00010222' || lpad(seq_s ...
- oracle的创建视图,Oracle笔记:创建视图
视图这个名词太抽象了,乍一看完全不明白是什么意思,更不知道有何用处,其实了解清楚它的含义后你就会恍然大悟.表和视图的区别 视图这个名词太抽象了,乍一看完全不明白是什么意思,更不知道有何用处,其实了解清 ...
- oracle数据库创建user,Oracle数据库如何创建数据库用户呢?
摘要: 下文讲述Oracle数据库中创建数据库用户的方法分享,如下所示: 在oracle数据库中,当我们创建了相应的数据库后,通常我们会为数据库指定相应的用户,然后单独操作此数据库, 下文讲述orac ...
- oracle 怎么创建约束,Oracle创建约束
约束的类型: oracle数据库支持的约束类型包括: 1.unique 2.not null 3.primary key 4.foreignkey 5.check 约束都有名称.如果没有显示地给它们命 ...
- oracle 如何创建job,oracle创建job
一.基本语法 与MysqL的event事件类似,用来创建数据库的定时任务. DBMS_JOB.SUBMIT( job OUT BINARY_INTEGER,what IN VARCHAR2,NEXT_ ...
最新文章
- server vscode中的live_太方便了!这款神器能在浏览器中运行 VS Code,随时随地写代码...
- tensorflow 进阶(四)---CNN
- 苹果成为存储厂商的新饽饽
- Nginx Lua读取redis 进行权限认证操作
- 谁是杨强?首位AAAI华人主席,身兼5大顶级组织Fellow,也是华为诺亚方舟实验室开创者...
- SASS+COMPASS 自适应 学习笔记
- Windows11系统引导修复(因EasyBCD误删win11启动)
- 在国内怎么使用谷歌Chrome浏览器,为什么我的谷歌浏览器进去就加载失败
- 朱生豪先生的情书 ---- 醒来觉得甚是爱你
- 好看的html视频播放界面,推荐几款超个性的HTML5视频播放器
- 信息安全从业者书单推荐
- uniapp 开发电视机APP 基座连接电视机
- CSS基础:margin在行内元素及行级块元素失效两个元素之间margin重叠
- DICOM医学图像处理:AETitle在C-FIND和C-MOVE请求中的设置问题
- linux生成mux节点,mux - 路由
- 2022渗透测试-面试题目大全
- idea,eclipse和jdk环境配置
- 在计算机技术指标中mips用来描述,mips用来描述计算机的什么
- HDU2182 Frog —— 简单DP
- 聊聊group lasso