批量执行SQL文件

    技术2022-05-20  52

    摘要:很多时候我们在做系统升级时需要将大量的.sql文件挨个执行,十分不方便。而且考虑到执行顺序和客服的操作方便性,能不能找到一种简单的方法来批量执行这些sql文件呢?

    主要内容:

    准备工作 利用osql/ocmd命令批量执行sql文件 使用master..xp_cmdshell存储过程调用osql/ocmd命令 总结

    一、准备工作

    既然是要批量执行sql文件,首先我们建立两个sql文件:1.sql和2.sql。

    1.sql的内容:

     INSERT INTO dbo.Products ( ProductName ) VALUES ( '1.sql_'+CAST(GETDATE() AS NVARCHAR(10)) )

    2.sql中的内容:

     INSERT INTO dbo.Products ( ProductName ) VALUES ( '2.sql_'+CAST(GETDATE() AS NVARCHAR(10)) )

    二、利用osql/ocmd批处理批量执行sql文件

    我们如果需要在命令行执行sql,就需要用到osql命令,当然这个是sql server附带的工具,其具体用法如下图:

    注意:在上图中我们可以看到osql 并不支持 SQL Server 2008的所有功能,如果需要使用SQL Server 2008的所有功能可以使用ocmd命令。

    有了osql/ocmd命令要批量执行sql文件当然需要写一个批处理命令,例如我们执行上面sql文件就可以在txt中编写下面的语句:

     osql -S"127.0.0.1" -U"sa" -P"sa" -d"Northwind" -i"

    转载请注明原文地址: https://ibbs.8miu.com/read-2224087.html

    最新回复(0)