怎么把图片,视频存储在Oracle数据库中?请各位高手不吝赐教!

解决方案 »

  1.   

    定义blob字段,使用dbms_lob包。
    问题能否描述的详细一些,数据库版本,使用什么前端录入,还是plsql录入?
      

  2.   


    --一个完整的存储图片的例子,楼主参考下,可费劲找了,嘎嘎~
    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)
    ---------------
               4670SQL>
      

  3.   

    两种:
    1、对待图片,可以采用blob字段来进行存储2、对待视频,强烈建议用路径存储,否则你的数据库会增长太快,承受不了
      

  4.   

    在数据库中建立blob字段(即二进制),选择该栏位添加即可。 如用程式向数据库中添加,先将图片转化化二进制文件,再用insert语句插入。程式导出时将二进制文件转为图片格式。
    其实不光是图片任何东西都可以转化为blob类型。 从网上你搜索一下用程式如可转化blob类型,很容易就找到。