运行 SQL 包含来自 VB6 代码的各种 DDL 命令和 INSERT 操作的文件

Running SQL Files with Variety of DDL commands and INSERT operations from a VB6 Code

我有一个 VB6 应用程序,它通过一些脚本将 BAK 文件恢复到数据库和 运行s。

由于有大量 SQL 脚本到 运行,我决定将它们全部移动到 SQL 文件中,然后从应用程序中移动到 运行 .

SQL 文件现在充满了很多 CREATE、UPDATE Table 语句以及 INSERT 语句。我同时使用 SQL Server 2008 R2 和 SQL Server 2012。

有没有一种方法或函数可以从 VB6 代码执行相同的操作?

在此先感谢您的帮助。

编辑 1:SQL 文件也有 CREATE 过程和触发器

您可以使用

从命令行 运行 SQL 脚本
sqlcmd -S myServer\instanceName -i C:\myScript.sql

(参见 https://msdn.microsoft.com/en-us/library/ms170572.aspx

在 VB6 中,您可以使用 Shell 命令执行命令行字符串,例如启动 Windows 计算器:

Shell "C:\WINDOWS\System32\calc.exe", vbNormalFocus

有关 Shell 命令的更多信息,请参阅:https://msdn.microsoft.com/en-us/library/aa242087.aspx and How do I call a Windows shell command using VB6?

组合应该能满足您的需求,如下所示:

Shell "sqlcmd -S myServer\instanceName -i C:\myScript.sql", vbNormalFocus

我看到这篇文章 https://www.simple-talk.com/sql/sql-tools/sql-server-sqlcmd-basics/ 中有大量关于 SQLCMD 的有用信息,可能值得一读。