none
想将word文件存入access数据库,该如何实现呢? RRS feed

  • 问题

  • 为了方便管理,想直接将word文件存入access数据库,应该在数据库里创建什么类型的字段?C#代码上应该怎么实现呢?
    2009年12月13日 1:42

答案

  • 大对象,方法类似图像文件的数据库存储
    • 已标记为答案 Mog Liang 2009年12月18日 3:51
    2009年12月13日 2:27
  • 首先你将ACCESS字段类型设为  ole对象
    然后把ACCESS转换为二进制存入数据库

    using System.IO;

      FileStream fs = new FileStream(@"C:\caisslog.doc",FileMode.OpenOrCreate);
      byte[] array = new byte[fs.Length];
      int position = 0;
      //将文件转换为二进制,存入数组
      int i=fs.Read(array, position, (int)fs.Length);
      //然后执行插入数据库的操作即可
      .....  //插入操作
    努力+方法=成功
    • 已标记为答案 Mog Liang 2009年12月18日 3:51
    2009年12月14日 1:19
  • 你好!

    Access 中支持 “OLE 对象” 的字段类型,你将你的文件,图片等转换成二进制存入到这个字段即可。

    知识改变命运,奋斗成就人生!
    • 已标记为答案 Mog Liang 2009年12月18日 3:51
    2009年12月16日 1:33
    版主

全部回复

  • 大对象,方法类似图像文件的数据库存储
    • 已标记为答案 Mog Liang 2009年12月18日 3:51
    2009年12月13日 2:27
  • 你好!
         可以参考一下这里:
    http://zl.pcw.com.cn/post/379/71664
         希望对你有帮助!
    周雪峰
    2009年12月13日 2:36
    版主
  • 首先你将ACCESS字段类型设为  ole对象
    然后把ACCESS转换为二进制存入数据库

    using System.IO;

      FileStream fs = new FileStream(@"C:\caisslog.doc",FileMode.OpenOrCreate);
      byte[] array = new byte[fs.Length];
      int position = 0;
      //将文件转换为二进制,存入数组
      int i=fs.Read(array, position, (int)fs.Length);
      //然后执行插入数据库的操作即可
      .....  //插入操作
    努力+方法=成功
    • 已标记为答案 Mog Liang 2009年12月18日 3:51
    2009年12月14日 1:19
  • 如此变成二进制数后如果读出来是不是就不容易了啊?
    2009年12月14日 13:25
  • 为什么你会有这种想法?存进去不就是为了读出来的么?难道放在那里占空间?

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful.
    Visual C++ MVP
    2009年12月15日 19:46
    版主
  • 读出的时候再对二进制进行转换
    努力+方法=成功
    2009年12月16日 0:48
  • 你好!

    Access 中支持 “OLE 对象” 的字段类型,你将你的文件,图片等转换成二进制存入到这个字段即可。

    知识改变命运,奋斗成就人生!
    • 已标记为答案 Mog Liang 2009年12月18日 3:51
    2009年12月16日 1:33
    版主