master.dbo.xp_cmdshell  '  osql  -U  sa  -P  yjdn  -i  c:\aa.sql'

解决方案 »

  1.   

    master.dbo.xp_cmdshell  '  osql  -U  sa  -P  密码  -i  c:\aa.sql'--c:\aa.sql为路径
      

  2.   

    不过我用Query Analyzer 执行这个语句,提示有错误,请问用什么工具执行该命令?
    谢谢!
      

  3.   

    exec master..xp_cmdshell 'osql -Usa -P -Sserver_name -i  c:\1.sql'
      

  4.   

    可以使用 osql 来执行数据库脚本文件,数据库脚本文件是由 Transact-SQL 语句和 osql 命令混合构成的文本文件。osql 执行脚本文件中的语句和命令的方式与执行以交互方式输入的语句和命令的方式类似。主要区别在于,执行脚本文件时,osql 将连续读取整个输入文件,而不必暂停以等待用户输入语句和命令。osql开关说明:
    服务器开关 (-S),用来标识 osql 所连接的 SQL Server 实例。 
    如果指定 -S 计算机名,osql 将连接到指定计算机上的默认实例。
    如果指定 -S 计算机名\实例名,osql 将连接到此计算机上指定的命名实例。身份验证开关 (-E、-U、-P),用于指定 osql 在连接 SQL Server 实例时所使用的凭据。 
    如果指定 -E,osql 将使用当前的 Windows 登录帐户来请求 Windows 身份验证连接。这是连接到 SQL Server 实例的最安全选项。
    但如果 SQL Server 实例只支持 SQL Server 身份验证,则必须使用 -U 开关指定 SQL Server 登录帐户,并使用 -P 开关指定该帐户的密码。 输入开关(-Q、-q 和 -i),用于标识 osql 输入的位置。 
    如果指定 -q Transact-SQL 语句,osql 将连接到一个 SQL Server 实例,执行指定的 Transact-SQL 语句,然后提示您输入其他 Transact-SQL 语句或 osql 命令。
    如果指定 -Q Transact-SQL 语句,osql 将连接到一个 SQL Server 实例,并运行 Transact-SQL 语句,再断开连接,然后终止运行。如果您有一个包含一条或多条 Transact-SQL 语句的文本文件,请使用 -i 文件名 开关告诉 osql 使用该文件作为 Transact-SQL 语句的来源。osql 将连接到一个 SQL Server 实例,发送输入文件中的所有 Transact-SQL 语句,然后断开连接,并终止运行。输出开关 (-o),用于指定 osql 要在其中存放输出结果的文件。如果指定 -o 文件名,osql 将创建具有该名称的文本文件,并将所有输出结果存放到该指定文件中。如果没有指定 -o,osql 会在当前执行 osql 的命令提示符窗口中显示所有输出结果。用 osql 执行脚本的示例:
    打开记事本,并键入下列 Transact-SQL 语句和 osql 命令:USE Northwind
    GO
    SELECT SupplierID, CompanyName
    FROM Suppliers
    WHERE CompanyName LIKE 'T%'
    GO
    使用“文件”->“另存为”菜单将键入的内容保存到 C:\MyFolder 文件夹内的 MyScript.sql 文件中。在命令提示符中执行下列命令,以便运行脚本并将输出结果存放在同一个文件夹内的 MyOutput.rpt 文件中:osql -E -i C:\MyFolder\MyScript.sql -o C:\MyFolder\MyOutput.rpt在记事本中查看 MyOutput.rpt 的内容可以看到下列内容:1> 2> 1> 2> 3> 4> SupplierID  CompanyName                               ----------- ----------------------------------------            4 Tokyo Traders                            (1 行受到影响)1>可以用 -n 开关让批处理行号 (1> 2> 1> 2> 3> 4>) 不显示:osql -E -n -i C:\MyFolder\MyScript.sql -o C:\MyFolder\NoHeaders.rpt查看 NoHeaders.rpt 的内容时,将看到下列内容: SupplierID  CompanyName                               ----------- ----------------------------------------            4 Tokyo Traders                            (1 行受到影响)
    以上内容摘自SQL Server 2000 联机帮助
      

  5.   

    在cmd下有两个命令可以阿
    isql
    osql