如何将本地的图片声音文件写入oracle数据库的blob字段中

orange2003 2006-08-24 03:11:39
在vc中,我如何将一个本地的图片或者声音文件写入到oracle数据库中?
oracle数据库所在服务器是unix的,如果纯粹用存储过程的话,只能将服务器上的某个文件写入到数据库,现在是想把客户端用户选择的文件写入到oracle数据库的blob字段中,应该怎么处理啊?高手帮忙,谢谢!
...全文
186 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
F15Eagle 2007-03-10
  • 打赏
  • 举报
回复
chanet(牧师) 答对了,哈哈
chanet 2006-08-26
  • 打赏
  • 举报
回复
如下内容为转载:----------------------

SQL> CREATE TABLE IMAGE_LOB (
2 T_ID VARCHAR2 (5) NOT NULL,
3 T_IMAGE BLOB NOT NULL
4 );

表已创建。

SQL> CREATE OR REPLACE DIRECTORY IMAGES AS 'C:\Inetpub\wwwroot';

目录已创建。

SQL> CREATE OR REPLACE PROCEDURE IMG_INSERT (
2 TID VARCHAR2,
3 FILENAME VARCHAR2) AS
4 F_LOB BFILE;
5 B_LOB BLOB;
6 BEGIN
7 INSERT INTO IMAGE_LOB (T_ID, T_IMAGE) VALUES (TID,
8 EMPTY_BLOB ()) RETURN T_IMAGE INTO B_LOB;
9 F_LOB:= BFILENAME ('IMAGES', FILENAME);
10 DBMS_LOB.FILEOPEN (F_LOB, DBMS_LOB.FILE_READONLY);
11 DBMS_LOB.LOADFROMFILE (B_LOB, F_LOB,
12 DBMS_LOB.GETLENGTH (F_LOB));
13 DBMS_LOB.FILECLOSE (F_LOB);
14 COMMIT;
15 END;
16 /

过程已创建。

SQL> BEGIN
2 IMG_INSERT('1','win2000.gif');
3 END;
4 /

PL/SQL 过程已成功完成。

SQL> select length(t_image) from image_lob where t_id='1';

LENGTH(T_IMAGE)
---------------
4670

SQL>
orange2003 2006-08-25
  • 打赏
  • 举报
回复
有没有谁知道的啊?帮忙啊

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧