首页 > 解决方案 > Invoke-Sqlcmd 和 Export-Csv 消耗大量内存?

问题描述

目前,我们正在使用PowerShell中的Invoke-Sqlcmd和命令从 SQL Server 导出 csv 文件。Export-Csv

要上传到 Redshift,我们需要用双引号将数据括起来并转换为 UTF8 编码。

所以我们考虑了组合Invoke-SqlcmdExport-Csv更容易和简单的开发。

这是示例命令:

Invoke-Sqlcmd –Username $StrUserName –Password $StrPassword 
              -Query $StrQry -ServerInstance $StrSvrName 
              -IgnoreProviderContext -QueryTimeOut 3000 | Export-Csv -path $StrExpFile -Encoding UTF8

正常数量的导出操作没有问题,但是当目标表数据超过百万行时,会消耗大量内存。

如果您有任何降低成本的想法或任何其他导出数据的方法,请用编码 UTF-8 的双引号括起来,请告诉我。

谢谢你。

标签: sql-serverpowershellinvoke-sqlcmdexport-csv

解决方案


推荐阅读