【发布时间】:2018-03-11 11:38:19
【问题描述】:
到目前为止,我已经使用 export-csv 完成此操作,然后将 csv 读回另一个 SQL DB,但数据不一样,它被清除了它的列类型和位类型(1 或 0) ) 在另一个数据库中最终为真或假
是否有一种简单的方法可以在一个 SQL 服务器上发出 select 语句,并将结果写入另一个 SQL 服务器,我需要根据 select 语句的结果在第二个新服务器上创建表。
我希望这是有道理的。
$Global:SqlAdapter = New-Object System.Data.SqlClient.SqlDataAdapter($Global:SqlCmd)
$Global:filename = "$cfgdir\$svr-$db-$date.csv"
$DataSet = New-Object System.Data.DataSet
$SqlAdapter.Fill($DataSet) >$null| Out-Null
$DataSet.Tables[0] | export-csv $Global:filename -NoTypeInformation
如果可能的话,我宁愿将数据直接导入另一个数据库,而不是将数据导出到 csv。
【问题讨论】:
-
为什么这个标签同时带有 MySQL 和 SQL Server 的标签?您是否在不同的数据库产品之间移动数据?
-
为什么不在每个 SQL Server 之间使用链接服务器?使用 PowerShell 需要先从一个源中提取它,然后才能将其放到目标中。
-
因为端SQL服务器属于不同的业务,不允许链接。我们必须手动收集。我试图让收集和整合数据变得更容易,而不是连接到每个服务器,运行命令并保存到 csv。到目前为止,我可以遍历每个服务器并将查询输出到每个服务器的 .csv 文件。但最终希望将数据整合到我们自己的 SQL DB 中以便于使用。
标签: sql sql-server powershell export-to-csv