我在网络上有多个远程计算机,它们上面有一个csv文件,存储在由PowerShell脚本创建的同一位置。
将数据插入Microsoft Sql Server Express数据库的最佳方法是什么?
答案 0 :(得分:0)
执行此操作的一种方法是将所有服务器中的所有CSV文件收集到脚本服务器。然后从脚本服务器运行SQL Invoke-SQLCmd2
查询,将数据放入SQL表中。
如我之前的answers之一所述,您可以使用此module INSERT
来执行此操作。
另一方面,当您不想首先收集所有CSV文件时,正在从具有CSV文件的每个服务器运行SQL Import-Module -Name '\\SCRIPTSERVER\C$\Windows\system32\WindowsPowerShell\v1.0\Modules\Invoke-SQL'
查询。为此,您必须连接到其他服务器,然后从脚本服务器导入模块,以便您可以使用它:
with products as
(
select 1001 as product_id, 'Bananas' as product_name from dual union all
select 1002 as product_id, 'Apples' as product_name from dual union all
select 1003 as product_id, 'Pears' as product_name from dual union all
select 1004 as product_id, 'Oranges' as product_name from dual
)
SELECT LISTAGG(rn||'. '|| product_name, CHR(13)) WITHIN GROUP (ORDER BY product_name) "Product_Listing"
FROM
(SELECT product_id, product_name, row_number() over (order by product_name) as rn
FROM products)