使用 sqlcmd 从脚本文件执行 T-SQL
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW)
使用 sqlcmd 来运行 Transact-SQL 脚本文件。 Transact-SQL 脚本文件是一个文本文件,它可以包含 Transact-SQL 语句、 sqlcmd 命令以及脚本变量的组合。
创建脚本文件
假设已经安装了 AdventureWorks2022 示例数据库,请按照本部分中的示例创建一个脚本文件,可以使用 sqlcmd 从命令提示符运行该文件。
若要使用记事本创建 Transact-SQL 脚本文件,请执行下列操作:
选择“开始”,依次指向“所有程序”、“附件”,再选择“记事本”。
复制以下 Transact-SQL 代码并将其粘贴到记事本:
USE AdventureWorks2022; GO SELECT p.FirstName + ' ' + p.LastName AS 'Employee Name', a.AddressLine1, a.AddressLine2 , a.City, a.PostalCode FROM Person.Person AS p INNER JOIN HumanResources.Employee AS e ON p.BusinessEntityID = e.BusinessEntityID INNER JOIN Person.BusinessEntityAddress bea ON bea.BusinessEntityID = e.BusinessEntityID INNER JOIN Person.Address AS a ON a.AddressID = bea.AddressID; GO
将文件以 myScript.sql 格式保存在文件夹中,例如
C:\scripts
驱动器。
运行脚本文件
打开命令提示符窗口。
在命令提示符窗口中,键入:
sqlcmd -S myServer\instanceName -i C:\scripts\myScript.sql
按 Enter。
Adventure Works 员工的姓名和地址列表便会输出到命令提示符窗口。
将输出保存到文本文件中
打开命令提示符窗口。
在命令提示符窗口中,键入:
sqlcmd -S myServer\instanceName -i C:\scripts\myScript.sql -o C:\EmpAdds.txt
按 Enter。
命令提示符窗口中不会返回任何输出, 而是将输出发送到 EmpAdds.txt 文件。 您可以打开 EmpAdds.txt 文件来查看此输出操作。