需求:为IM系统设计一简易数据库,能保存文本(rtf),小图片等混合内容,内容可能需要加密
      有多个字段:记录编号,日期,时间,消息类型,发送方IP,接受方IP,发送方帐号,接受方帐号
                  内容格式,内容长度,消息内容
      不考虑Access,SQLLite等
      最好能在一个文件里完成,功能类似 QQ 的 MsgEx.db
     注:曾经用一个数据文件加一个索引文件实现,现优先考虑单文件实现需要实现的接口:1、快速提取最大记录号
2、按编号检索数据
3、按日期时间查询
4、按类型过滤
5、执行文本搜索
6、按条件删除记录,并压缩存储空间

解决方案 »

  1.   

    可以参照下 纯真ip库的 qqwry.dat的实现
      

  2.   

    QQ 的 MsgEx.db 用的是复合文档技术,你也可以采用。可以考虑每个账号对应一个子存储。
    但搜索还是效率不高,我做过类似的应用,解决的方法是在该文件中保存一个xml,用来索引其他的内容。
      

  3.   

    关于复合文档的资料:
    http://www.blog.edu.cn/user2/46229/archives/2006/1077434.shtml
      

  4.   

    http://codes.21tx.com/2000/12/10/10676.html
    复合文档的vb源码