sql - Powershell从txt文件中的查询调用-sqlcmd

标签 sql sql-server tsql powershell

我在一个文件夹的多个文本文件中有TSQL插入语句。我需要在Powershell中使用foreach循环在sql服务器上运行。它应该转到文件夹中的每个文件,读取执行查询并再次终止连接,再读取下一个文件,然后执行相同的操作

invoke-sqlcmd -ServerInstance KUMSUSHI7 -Query (Get-Content | For-each "C:\Drill\Task\SAMS Automation\Query.txt")

请帮我

最佳答案

Invoke-Sqlcmd可以将脚本文件作为参数,因此不需要-Query。 MSDN上有an example:

Invoke-Sqlcmd -InputFile "C:\TestSQLCmd.sql" | Out-File -filePath "C:\TestSQLCmd.rpt"

因此,获取您的sql文件列表,然后将文件名传递给Invoke-Sqlcmd
gci "c:\some\path\*" -include *.sql | % {
    Invoke-Sqlcmd -InputFile $_.FullName
}

关于sql - Powershell从txt文件中的查询调用-sqlcmd,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28958424/

相关文章:

sql - 我可以明确强制 SQL Server 不缓存我的查询结果集吗?

sql - 等于一是什么意思 - ISNULL (something, 1) = 1

java - 从用户搜索条件动态创建 WHERE 子句

mysql - 给定一个用户,选择具有最常见评分的用户

java - 无法将 SQL 结果写入 Java 文件

sql-server - CSV 数据中的逗号

Sql单索引或多索引

Java,将传入附件与数据库中的图像列表进行比较,看看是否相同

sql - 如何减去下一行SQL Server中的列值

python - 类型错误 : object of type 'map' has no len() when trying to insert a CSV into an SQL Server database in Python 3