sqlserver导出大量数据到Excel,电子表满

sqlserver导出大量数据到Excel

记录导出数据遇到的坑~~~
sqlserver 导出数据到Excel最简单的方法是将查询出来的结果,右键–>另存为excel或者txt。但是这种方式有明显缺点,如果内容中有特殊的字符,往往会影响我们导出的excel准确性。比如有回车符的时候excel格式也会窜行,影响数据识读性。这就导致了我sql查询出的结果是2万条,但是实际导出的时候看行号却少了几百条。
另一种方式更加标准化一些,利用sqlserver自带的导出功能。右键数据库–>任务–>导出数据–>指定数据源和目标文件。
这里要注意一下,在指定文件的时候往往导出Excel文件后缀会默认为.xls,无论这里选择了97-03版本还是07版本,这里都是.xls。据观察.xls和.csv在存储相同数量的文件时,文档大小要远大于.xlsx。所以,在这里要手动调整一下文档的后缀名为.xlsx。这样在遇到“电子表满”的问题前可以存储更多的数据在这里插入图片描述(当然我的数据库是管理工具是2014版的,新版本可能没这个问题,不过我没有尝试。)
上步操作可以增加导出数据的量,但是导出大量数据时往往会很慢,这时可以利用另一个操作。“编辑映射”
在这里插入图片描述在这里插入图片描述 数据库导出时往往把一个很小的字段指定的类型非常长。这样会影响我们的导出速度,可以手动更改一下,比如讲Longtext改为varcha,并根据实际情况定义一下长度。这样会大大提高导出速度。
导出数据条数和字段多少、长度都有关系,具体没有测试过它的极限,仍有可能因为大量数据导出时出现“电子表满”的情况,但是已经完美解决了我遇到的问题

最后总结一点,其实前面巴拉巴拉的经验都没啥用,安装一个神器,百度SQLPrompt插件,查询后右键就能直接另存。。。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值