添加引用--〉COM--〉“Microsoft SQLDMO Object Library”SQLDMO.Application sqlApp = new SQLDMO.ApplicationClass();
SQLDMO.NameList sqlServers = sqlApp.ListAvailableSQLServers();
...

解决方案 »

  1.   

    /// <summary>
    /// 数据传输
    /// </summary>
    /// <param name="SrcDatabase"></param>
    /// <param name="ServerName"></param>
    /// <param name="DBUserName"></param>
    /// <param name="DBPassword"></param>
    /// <param name="IsIntegrated"></param>
    /// <param name="DestDatabase"></param>
    private void TransferDatabaseToServer(string SrcDatabase,string ServerName,string DBUserName,string DBPassword,bool IsIntegrated,string DestDatabase)
    {
     SQLDMO.SQLServer2 oServer = new SQLDMO.SQLServer2Class(); 
     SQLDMO.Database2 oDatabase; 
     SQLDMO.Transfer2 oTransfer = new SQLDMO.Transfer2(); 
     oTransfer.IncludeDependencies = false; 
     oServer.LoginSecure = false; 
     oServer.Connect(ServerName,DBUserName,DBPassword); 
     oDatabase = (SQLDMO.Database2)oServer.Databases.Item(SrcDatabase,""); 
     oTransfer.DestDatabase = DestDatabase;
     oTransfer.CopyAllTables = true; 
     oTransfer.CopyAllObjects = true;
     oTransfer.CopyAllDefaults = false; 
     oTransfer.CopyAllRules = true; 
     oTransfer.CopyAllStoredProcedures = true; 
     oTransfer.CopyAllTriggers = true; 
     oTransfer.CopyAllViews = true; 
     oTransfer.CopySchema = true; 
     oTransfer.CopyData = SQLDMO.SQLDMO_COPYDATA_TYPE.SQLDMOCopyData_Replace; 
     oTransfer.DestTranslateChar = true; 
     oTransfer.DropDestObjectsFirst = true; 
     oTransfer.IncludeDB = false; //是否在目标数据库不存在的情况下创建数据库 
     oTransfer.IncludeGroups = false; 
     oTransfer.IncludeUsers = false; 
     oTransfer.IncludeLogins = false; 
     oTransfer.IncludeDependencies = false; 
     oTransfer.DestUseTrustedConnection = false;
     oTransfer.DestLogin = DBUserName; 
     oTransfer.DestPassword = DBPassword; 
     oDatabase.Transfer(oTransfer);
     oServer.DisConnect();     
     oServer = null;
     System.Runtime.InteropServices.Marshal.ReleaseComObject(oTransfer);
     System.Runtime.InteropServices.Marshal.ReleaseComObject(oDatabase);
     //System.Runtime.InteropServices.Marshal.ReleaseComObject(oServer);
     System.GC.Collect();
    }
      

  2.   

    感谢楼上的朋友你这个function能转Access的吗?如果能转,Access的目标字符串写什么