【问题标题】:Run local SQL script file from Windows Command Prompt to update remote SQL Server database从 Windows 命令提示符运行本地 SQL 脚本文件以更新远程 SQL Server 数据库
【发布时间】:2016-02-16 05:21:34
【问题描述】:

我正在处理一个将数据更新到远程数据库的 SQL 文件。我的 SQL 文件没问题。现在的要求是从命令提示符运行这个 SQL 文件。有没有办法从命令提示符或批处理文件运行这个 SQL 文件?

我使用的是 SQL Server 2012,并且 SQL 文件在我的本地计算机上。

谁能帮忙。提前致谢。

编辑

我尝试使用sqlcmd 进行连接,但我的数据库连接失败

【问题讨论】:

    标签: c# sql sql-server batch-file cmd


    【解决方案1】:

    是的,您可以从命令提示符运行 SQL 文件。为此使用sqlcmd。 您可以在此处找到sqlcmd 的文档。 https://msdn.microsoft.com/en-us/library/ms162773.aspx

    编辑: 您可以为此使用以下代码。您必须为自己的变量设置值:

    sqlcmd -e -x -r -b -W -U %user% -S %server% -d %db_name% -P %pass% -i %sqlfile% -r1
    

    %server%的值设置为serverIP\instancename

    编辑 2: 完整的脚本应该接近这个:

        Set scriptfile=InsertDB.sql
        Set dbserver=
        set /p dbserver=Database Server :
        Set dbname=
        set /p dbname=Database Name :
        Set usrname=
        set /p usrname=Database Username : 
        Set passw=
        set /p passw=Database Password: 
        set scriptPath=%~dp0
        sqlcmd -e -x -r -b -s"| ", -W -U %usrname% -S %dbserver%  -d %dbname% -P %passw% -i "%scriptPath%%scriptfile%" -r1
        Pause&Exit
    

    【讨论】:

    • 非常感谢。我可以通过从用户那里获取值来设置变量值吗?
    • 此命令无法连接到数据库。有什么我想念的吗?
    猜你喜欢
    • 2020-08-29
    • 2011-01-29
    • 1970-01-01
    • 2017-01-12
    • 1970-01-01
    • 1970-01-01
    • 2017-03-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多