oracle文档怎么读,oracle读取文件方法

如何阅读oracle数据块的dump文件

dump出Oracle block后,可以看到事物槽,包含有事物槽号(ITL),XID,UBA,FLAG,LCK,SCN。

公司主营业务:成都网站建设、成都网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出龙岩免费做网站回馈大家。

本文主要讨论FLAG标记的规则,其中FLAG在block中占用1个字节大小。

data block的dump信息中ITL中的xid:0x000c.011.000000e6是由undo信息组成的:xidusn.xidslot.xidsqn(wrap#)

data block的dump信息中ITL中的uba:0x00800554.00d6.28是由uba(undo block address).UBASQN.UBAREC

我们知道FLAG各种标记位代表不同意思,以下为不同标记位代表不同意思:

—- = transaction is active, or committed pending cleanout

C— = transaction has been committed and locks cleaned out

-B– = this undo record contains the undo for this ITL entry

–U- = transaction committed (maybe long ago); SCN is an upper bound

—T = transaction was still active at block cleanout SCN

看上面的标记位有一定的规律可循,以下为测试过程,其中07代表锁的行数

BBED modify 0×0700

Itl Xid Uba Flag Lck Scn/Fsc

0×01 0×0023.02f.0000004e 0×0280073e.0010.2b –U- 3 fsc 0×0000.0811d995

0×02 0×0029.02d.0000004d 0×028008c5.0010.37 —- 7 fsc 0×0a00.0811d8b7

1.事务开始时,需要在回滚段事务表上分配一个事务槽(alter system dump undo header '回滚段名称');

2.在数据块头部获取一个ITL事务槽,该事务槽指向回滚段头的事务槽(alter system dump datafile .. block ..);

3.在修改数据之前,需要记录前镜像信息,这个信息以UNDO RECORD的形式存储在回滚段中,回滚段头指向该记录

(通过回滚段头事务表的信息,alter system dump datafile .. block ..查看回滚记录);

4.锁定修改行,修改行锁定位(lb-lock byte)指向ITL事务槽,可以dump数据块查看;

5.数据修改可以进行;

如何读取Oracle的BLOB字段里的文件

楼主你好!根据你的描述,让我来给你回答!

create table temp_blob as select blob_colname from tbname ;

然后使用exp或者expdp 。

或者你也可以使用第三方编程语言或者软件来导出。

希望能帮到你,如果满意,请记得采纳哦~~~

oracle dsi文档怎么看

oracle dsi文档怎么看

SI是Data Server Internals的缩写,是Oracle公司内部用来培训Oracle售后工程师使用的教材.

这样的文档上通常都印着:oracle Confidential:For internal Use Only.

所以传播这类文档通常是为Oracle所禁止的,但是因为一些特殊的原因,这些文档在民间也多有流传.

你可以从Google找到一些相关信息.但是关于任何DSI教材的交流,索取都是相当敏感的.

如何在Oracle存储过程中读写文件

1. 授于test用户文件读写和执行命令的权限

SQLexec dbms_java.grant_permission('TEST','SYS:java.io.FilePermission','ALL FILES','read,write,execute,delete');

SQLexec dbms_java.grant_permission('TEST','java.lang.RuntimePermission','*','writeFileDescriptor' );

2. 建立java source

CREATE OR REPLACE AND RESOLVE JAVA SOURCE NAMED "bb" as import java.io.*;

import java.lang.*;

import java.util.*;

import java.sql.*;

import oracle.sql.*;

public class bb

{

public static void invoke_exe() throws IOException

{

Process p=Runtime.getRuntime().exec("d:/exp_74.bat");--注意/符号

try

{

p.waitFor();

}catch(InterruptedException ie){System.out.println(ie);}

}

}

/

3. 建立调用java source的存储过程CALL_BB

create or replace procedure CALL_BB

as

language java

name 'bb.invoke_exe()';

/

4. 执行CALL_BB即可;


当前文章:oracle文档怎么读,oracle读取文件方法
文章起源:http://pwwzsj.com/article/hsosgh.html