首先要在项目里引入以下3个dll文件:
Microsoft.SqlServer.ConnectionInfo.dll
Microsoft.SqlServer.Management.Sdk.Sfc.dll
Microsoft.SqlServer.Smo.dll
然后在代码里引入以下两个using:
using Microsoft.SqlServer.Management.Common;
using Microsoft.SqlServer.Management.Smo;
可以写代码了
//从SQL文件获取SQL语句
FileInfo objFileInfo = new FileInfo(strFileFullPath);
string SqlScript = objFileInfo.OpenText().ReadToEnd();
//初始化SSMS,注意要先创建连接
Server objServer = new Server(new ServerConnection(objSqlConn));
//执行SQL语句
objServer.ConnectionContext.ExecuteNonQuery(SqlScript);
这三个dll缺一不可,他们构成了一个极简化的SSMS,然后将SQL文件转化成SQL语句传给这个极简化的SSMS执行就可以了。