--查看表空间、数据文件相关信息
1、查看表空间包含哪些数据文件
SELECT T.FILE_NAME,T.TABLESPACE_NAME FROM DBA_DATA_FILES T
WHERE T.TABLESPACE_NAME='TBS_PKIQ'
2、查看表空间 包含哪些内容
SELECT T.owner,T.segment_name,T.segment_type,T.tablespace_name FROM DBA_SEGMENTS T
WHERE T.tablespace_name='TBS_PKIQ'
--导出方案
导出方案(包括数据):
exp nap/hs_hn_nap@jwzh file=g:\nap.dmp log=g:\nap.log owner=nap
导出方案结构(不含数据):
1、打开命令窗口; 2、输入exp; 3、输入用户名-密码@服务名; 4、...按提示操作...
导入方案 (导入的用户名、表空间需与被导入数据的一致) (导入方案结构与导入方案数据方法一样):
imp nap/hs_hn_nap@orcl file=g:\nap.dmp log=g:\nap_imp.log full=y
导出表空间:
exp pcs/hs_hn_pcs@jwzh tablespaces=TBS_HY file=d:\tbs_hy.dmp log=d:\tbs_hy.log
导入表空间:
exp pcs/hs_hn_pcs@jwzh file=d:\tbs_hy.dmp tablespaces=TBS_HY log
--触发器
自述:在触发器内判断一个操作具体是什么操作,可以通过判断该表字段的
:OLD.字段,:NEW.字段 是否空值来判断是 插入、更新还是删除操作。
1.语句触发器
语句触发器是指当执行DML语句时被隐含执行的触发器。如果在表
上针对某种DML操作建立了语句触发器,那么当执行DML操作时会自动执行触发器的相应代码。当审计DML操作,或者确保DML操作安全执行时,可以使用语句触发器。当使用语句触发器时,不能记录列数据的变化。建立语句触发器的语法如下:
CREATE [OR REPLACE] TRIGGER trigger_name
timing event1 [OR event2 OR event3]
ON table_name
PL/SQL block;
其中,timing用于指定触发时机(BEFORE或AFTER);event用于指定触发事件(INSERT、UPDATE和DELETE);table_name用于指定DML操作所对应的表名。
E.G:
CREATE OR REPLACE TRIGGER tr_sec_emp
BEFORE INSERT OR UPDATE OR DELETE ON emp
BEGIN
IF to_char(sysdate,’DY’,’nls_date_language=AMERICAN’)
IN(‘SAT,’SUN’) THEN
raise_application_error(-20001,’不能在休息日改变雇员信息’);
END IF;
END;
2.行触发器
行触发器是指当执行DML操作时,每作用一行被触发一次的触发器。
当审计数据变化时,可以使用行触发器。建立行触发器语法:
CREATE [OR REPLACE] TRIGGER trigger trigger_name
timing event1 [OR event2 OR event3]
ON table_name
[REFERENCING OLD AS old | NEW AS new]
FOR EACH ROW
[WHEN condition]
PL/SQL block;
其中,timing用于指定触发时机(BEFORE或AFTER);event用于指定触发事件(INSERT、UPDATE、DELETE);REFERENCING子句用于指定引用新、旧数据的方式,默认情况下使用old修饰符引用旧数据,使用new修饰符引用新数据;table_name用于指定DML操作所对应的表;FOR EACH ROW表示建立行触发器;WHEN子句(可选)用于指定触发条件。示例如下:
CREATE OR REPLACE TRIGGER tr_sal_change
AFTER UPDATE OF sal ON emp
FOR EACH ROW
DECLARE
v_temp INT;
BEGIN
SELECT count(*) INTO v_temp FROM audit_emp_change
WHERE name=:old.ename;
IF v_temp=0 THEN
INSERT INTO audit_emp_change
VALUES(:old.ename,:old.sal,:new.sal,SYSDATE);
ELSE
UPDATE audit_emp_change
SET oldsal=:old.sal,newsal=:new.sal,time=SYSDATE
WHERE name=:old.ename;
END IF;
END;
/
发表评论
-
大数据量转存(抽取、同步)
2012-11-22 01:23 734在大数据量的转存过程中,建议使用分批转存(不要一次转存过来 ... -
Oracle数据库优化要点总结
2012-10-22 10:33 717当oracle出现性能缓慢、 ... -
反向索引之应用
2012-10-19 15:54 767Oracle会自动为表的 ... -
PFILE与SPFILE差异
2012-10-17 11:56 8001.oracle实例启动时,寻找参数文件的顺序为 spf ... -
Oracle 分区简述
2012-10-12 12:01 693oracle8i起开始推出表分区的概念,最初只有范围分区、列表 ... -
Bitmap位图索引"高昂代价"与B-Tree比较
2012-10-10 08:54 694通过以下实验,来验证B ... -
关于Latch与Spin
2012-10-10 08:51 804latch 是一种轻量级用于保护oracle共享内存结构,用 ... -
完整的ORACLE的UTL_FILE的资料
2012-10-08 13:58 747转自:http://blog.csdn.net/alex197 ... -
RAID的类别使用(0,1,0+1,5)
2012-10-08 09:02 742raid0: 熟悉RAID 0的人都知道,它的读写速度是最高 ... -
oracle 裸设备使用和注解
2012-09-28 11:37 956看了一篇不错的的关于 ... -
EM无法登陆问题
2012-05-19 22:20 1288解决ORACLE的EM登录 这几 ... -
oracle的冷/热备份
2012-04-29 11:48 742一、 冷备份 冷 ... -
oracle安装、编译、参数配置
2011-06-09 19:23 707一、安装 按照以下标 ... -
Oracle个人笔记(SQL性能)2B
2011-06-09 19:20 6921.两者区别在哪?select trunc(sysdate,' ... -
start with...connect by prior用法
2011-06-09 19:18 689--当需要根据递归关系查询结果集时 start wit ... -
ORA-01157(表空间数据文件损坏需重建时)
2011-06-09 19:08 1037EM控制台报错如下: 处理步骤: 1. 备份该数据 ... -
工作积累(游标、权限、数组)2
2011-06-09 19:04 694--游标 一、显式游标通 ... -
Oracle个人笔记(系统查询语句)3
2011-06-09 18:55 573查询锁的表的方法:(1 ... -
Oracle个人笔记(SQL性能)2A
2011-06-09 18:54 7551. ...group by (code,name); 性能要 ... -
Oracle个人笔记(基本规则)1
2011-06-09 18:52 6501.GRANT 权限 ON 表名(对象名) TO 用户;2.o ...
相关推荐
2. 表空间与数据文件:在Oracle中,表空间(Tablespace)是存储数据的主要单位,由一个或多个数据文件(Datafile)组成。每个表空间可以包含多个数据库对象,如表、索引等。表空间的大小可以根据需要动态扩展。 3. ...
### 区域卫生智慧医疗大数据应用云平台建设方案解析 #### 一、综述 **1.1 项目建设的必要性** 随着信息技术的发展以及医疗服务需求的不断增长,传统的医疗卫生服务模式已经难以满足现代社会的需求。因此,建设一...
在这个实验中,你可能会学习如何安装和配置Oracle数据库、创建表空间、管理用户权限、编写PL/SQL代码、执行SQL查询、实施数据备份和恢复策略,以及使用Oracle的管理工具进行性能监控和问题排查。这将帮助你理解...
- 数据库逻辑结构:表空间、段、区、块等。 2. **SQL语言**: - 数据定义语言(DDL):创建、修改、删除数据库对象。 - 数据操纵语言(DML):插入、更新、删除数据记录。 - 数据查询语言(DQL):SELECT语句及各种...