首页 >> 租房知识

如何修改和删除类型的数据计划

2021-09-06 来源:开平租房网

1.先在oracle数据库中下面我们建立一个目录别名,用于将文件定位指针映射到文

件系统:

create DIRECTORY \'tmpdir\' AS \'/tmp\';

tmpdir表示逻辑目录名,\'/tmp\'是实际目录。 注意该目录oracle应该有读权限

然后根据需要授权

GRANT READ ON DIRECTORY bfile_dir1 TO scott;

建立一个含有bfile字段的表

create table bfiletest(id number(3), fname bfile);

2.插入数据

这里需要使用bfilename来进行bfile字段的insert 或者 update操作

[code:1:bb5d3f600c]

INSERT INTO bfiletest

VALUES (1, BFILENAME (\'tmpdir\', \'tmptest\'));

[/code:1:bb5d3f600c]

bfilename的参数1是DIRECTORY名,参数2是文件名。注意:这一行中插入的是

一个指向/tmp/tmptest的文件定位指针映射,不是文件本身。

3.读取bfile

通过使用dbms_lob包进行可以对bfile读入到blob/clob对象中操作(只读)

[code:1:bb5d3f600c]

CREATE OR REPLACE PROCEDURE loadLOBFromBFILE_proc IS

Dest_loc BLOB;

Src_loc BFILE := BFILENAME(\'tmpdir\', \'tmptest\');

这一成本还将随着技术的不断成熟而更低 BEGIN

SELECT blob_col INTO Dest_loc FROM aBLOBtable

WHERE ID= 111

FOR UPDATE;

/* 如果bfile文件实际存在 */

IF (DBMS_LEEXISTS(Src_loc) != 0)

THEN

/* 打开bfile源文件 */

DBMS_EN(Src_loc, DBMS_B_READONLY);

/* 打开目标blob: */

DBMS_EN(Dest_loc, DBMS_B_READWRITE);

/*从文件中装入 */

DBMS_ADFROMFILE(Dest_loc, Src_loc,DBMS_TLENGTH(Src_loc));

/* 记得关闭: */

DBMS_OSE(Dest_loc);

DBMS_OSE(Src_loc);

COMMIT;

END IF;

EXCEPTION

WHEN OTHERS THEN

DBMS_T_LINE(\'Operation failed\');

END;

[/code:1:bb5d3f600c]

会话能打开多少个文件有init参数SESSION_MAX_OPEN_FILES决定

文件大小由OS决定, 32位的文件系统为每个文件2gb或4gb

查看本文来源

英太青胶囊
郑州哪里有白癜风医院
合肥治疗阳痿多少钱