频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

用ORACLE数据库存储海量图像数据

来源:it168 作者: 出处:巧巧读书 2007-04-08 进入讨论组
上一页 1 2 3 4 5 6 下一页 


  四、存储图像数据的方法举例
 4.1 建立具有BLOB字段的ORACLE数据库
  按照如下步骤来完成各个操作:

(1)创建表空间:


CREATE TABALEESPACE VIDO_STORE DATAFILE'C:DATABASEtest.dbf' SIZE 200M

(2)创建表:

create table part( part_id NUMBER, 主建 part_name VARCHAR2(20), part_image BLOB, part_desc CLOB part_colla BFILE );

这个数据库第一列存储一个码,第二列存储名称,另外三列存储lob型数据。

  (3)创建新的用户:如user1/pass1,赋予connect,resource权限。
  (4)创建逻辑目录:

    bfile类型有着特殊性,跟clob,blob不同。实际的数据文件存储在的外面:所以有两个特点:1.没有事务性控制 2.bfile是只读的,不能用dbms_lob或oracl8 oci进行修改。 为了访问外部文件,服务器需要知道文件在操作系统中的位置。下面我们建立一个目录:操作系统
  create DIRECTORY utils AS '/home/utils';
 utils表示目录逻辑名,'/home/utils'是实际目录。

总结:

表空间 VIDO_STORE
Oracle service_names: oradb
Oracle用户名: user1
户名密码: pass1
测试表名: test
tnsnames: oradb
逻辑目录: utils

4.2利用Visual Basic 6.0来处理大对象
    在vb中处理大对象,一般可以用OO4O(oracle objects for ole)来处理。这里介绍一种不用0040处理大对象blob的方法。

下面这段程序可以将一个图像数据保存到数据库中,并可以将其从数据库读出。
程序中需要两个commandbutton
cmd1 名称 cmdsave caption 保存
cmd2 名称 cmdread caption 读取
向数据库中写入数据:

Dim OraSession As OraSession Dim OraDatabase As OraDatabase Dim OraDynaset As OraDynaset Dim PartDesc As OraClob Dim buffer As String Dim chunksize As Long Dim amount_written As Long '建立OraSession对象. Set OraSession = CreateObject("OracleInProcServer.XOraSession") '打开数据库连接建立OraDatabase 对象. Set OraDatabase = OraSession.OpenDatabase("ExampleDb", "scott/tiger", 0&) '建立 OraDynaset 对象 Set OraDynaset = OraDatabase.CreateDynaset("select * from part", 0&) Set PartDesc = OraDynaset.Fields("part_desc").Value chunksize = 32000
Web: http://www.qqread.com/oracle/2007/04/d307795.html 更多文章 更多内容请看存储过程数据库专栏数据库处理专题专题,或进入讨论组讨论。
上一页 1 2 3 4 5 6 下一页 
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章