操作lob,居然成功了!

SQL> create table testlob (id number(6) primary key,name varchar2(10),photo blob
);

表已创建。

SQL> insert into testlob values(1,'baobei',emty_blob());
insert into testlob values(1,'baobei',emty_blob())
*
第 1 行出现错误:
ORA-00904: "EMTY_BLOB": 标识符无效


SQL> insert into testlob values(1,'baobei',empty_blob());

已创建 1 行。

testlob的脚本:

declare
lobloc BLOB;
fileloc BFILE;
amount int;
src_offset int:=1;
dest_offset int:=1;
begin
select photo into lobloc from scott.testlob where id=&id for update;
fileloc:=bfilename('MyFilePath','&filename');
dbms_lob.fileopen(fileloc,0);
amount:=dbms_lob.getlength(fileloc);
dbms_lob.loadblobfromfile(lobloc,fileloc,amount,dest_offset,src_offset);
dbms_lob.fileclose(fileloc);
commit;
end;

SQL> CREATE OR REPLACE DIRECTORY MyFilePath AS 'e: est';
CREATE OR REPLACE DIRECTORY MyFilePath AS 'e: est'
*
第 1 行出现错误:
ORA-01031: 权限不足
这个要什么权限阿?明天去查一下!

登到sys下,执行:

SQL> @d: estlob.txt
17 /
输入 id 的值: 1
原值 8: select photo into lobloc from scott.testlob where id=&id for update;
新值 8: select photo into lobloc from scott.testlob where id=1 for update;
输入 filename 的值: FIL12.JPG
原值 9: fileloc:=bfilename('MyFilePath','&filename');
新值 9: fileloc:=bfilename('MyFilePath','FIL12.JPG');

PL/SQL 过程已成功完成。

用pl/sql developer查看,果然看到了我传上去的照片。

那天心情好的时候把我的照片全部传上去,咱也用数据库来管理我的相片!

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/288166/viewspace-968147/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/288166/viewspace-968147/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值