zoukankan      html  css  js  c++  java
  • 数据库导出excel (二)

    前文:数据库导出excel<一>
    上文所述的方法,虽然速度很快。但是有一个致命的缺点,文件无法再次导入。报错为:外部表不是预期的格式
    如何解决此问题?如上文所述,把原来导出的文件用excel打开另存为就OK了
    可是我们不能要求客户都这么做。
    在这里提出一种解决方法,希望和大家探讨。
    SQL2000不是能导出EXCEL么?而且是标准的excel文件。可以用SQL生成标准的excel文件,然后推给客户端下载啊。
    有了这个想法,接着就试试,结果成功了。
    步骤如下:
    SQL生成excel的存储过程,来自zjcxc邹健邹老大,tks:
    Code


    然后生成excel,推向客户端。
    原来的代码:

    Code
    问题出在推客户端这里,response流执行时,无法删除文件。难道咱们就永远让这这些文件存在服务器上?OMG。
    后来在csdn发帖,终于解决。先把excel变成二进制读入内存,删除原excel,推向客户端。
    c#端代码:


    Code

    终于完成。正常。
    但是发布到iis会报错:


    报错已经给出解决方法,添加文件夹的权限,对于本例,把F:\mycode\ExcelOut\Excel 文件夹加上aspnet帐户的完全控制权限。
    OK,全部正常。



    完整代码,包括前文的response输出:
    后台代码:
    Code

    后台:
    Code
  • 相关阅读:
    kettle处理未发现hadoop插件问题
    文档公式编辑神器-Snip
    hive -e执行出现「cannot recognize input near '<EOF>' in select clause」问题
    hive从本地导入数据时出现「Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.MoveTask」错误
    K-Means算法的Python实现
    kettle并行运行时出现「Unknown error in KarafBlueprintWatcher」
    初识 Kafka Producer 生产者
    一次 RocketMQ 进程自动退出排查经验分享(实战篇)
    再谈 RocketMQ broker busy(实战篇)
    RocketMQ 升级到主从切换(DLedger、多副本)实战
  • 原文地址:https://www.cnblogs.com/conan304/p/1536291.html
Copyright © 2011-2022 走看看