zoukankan      html  css  js  c++  java
  • 如何通过代码远程控制Microsoft Sql Server

    微软的Microsoft Sql Server有个SDK库,里面有相当于Manager功能各种命令,只要引用相应的Dll,就可以执行相应的命令,现在就以远程执行文件(.sql)为例。

    一、引用相应的DLL (version: sql 2008)

    引用以下DLL,文件所在位置是安装Mssql目录+Microsoft SQL Server\100\SDK\Assemblies

    Microsoft.SqlServer.ConnectionInfo.dll
    Microsoft.SqlServer.Dmf.dll
    Microsoft.SqlServer.Management.Sdk.Sfc.dll
    Microsoft.SqlServer.ServiceBrokerEnum.dll
    Microsoft.SqlServer.Smo.dll
    Microsoft.SqlServer.SqlClrProvider.dll
    Microsoft.SqlServer.SqlEnum.dll

    二、方法

    #region Execute file of sql
            public bool ExecuteSqlFile(string userId, string password, string server, string file)
            {
                bool result = true;
                try
                {
                    string sqlConnectionString = string.Format("server={2};database=master;uid={0};pwd={1}", userId, password, server);

                    FileInfo fileInfo = new FileInfo(file);

                    StringBuilder script = new StringBuilder(fileInfo.OpenText().ReadToEnd());
                    SqlConnection conn = new SqlConnection(sqlConnectionString);

                    Microsoft.SqlServer.Management.Smo.Server sqlServer = new Microsoft.SqlServer.Management.Smo.Server(new Microsoft.SqlServer.Management.Common.ServerConnection(conn));

                    sqlServer.ConnectionContext.ExecuteNonQuery(script.ToString());
                }
                catch
                {
                    result = false;
                }
                return result;
            }
            #endregion

    可要引用此方法就可以执行向远程数据库执行文件了,引用的方法如下:

    result = ExecuteSqlFile(dbUsername, dbPassword, dbServer, fileName);

  • 相关阅读:
    SE Springer小组之《Spring音乐播放器》需求分析说明书一
    SE Springer小组之《Spring音乐播放器》可行性研究报告一、二(转载)
    SE Springer小组之《Spring音乐播放器》可行性研究报告五、六
    软件分析之QQ
    浅谈《软件工程》
    前端格式
    Django基础
    正则表达式
    任务-线程
    一名奔三的程序猿的困惑
  • 原文地址:https://www.cnblogs.com/lovewife/p/1430196.html
Copyright © 2011-2022 走看看