sqlserverでデータベースを復元するために.netWebサービスを使用しています。SQLDMO.dllを使用してデータベースを復元していますが、アプリを実行すると、次のエラーが発生します。
System.Web.Services.Protocols.SoapException:サーバーはリクエストを処理できませんでした。---> System.UnauthorizedAccessException:CLSID {10021CC1-E260-11CF-AE68-00AA004A34D5}のコンポーネントのCOMクラスファクトリの取得が、次のエラーのために失敗しました:80070005. at DBReplicatorService.SQLDEMOScripts..ctor()at DBReplicatorService.DBReplicatorService .RestoreDB(String sDBName、String sUserName、String sPassword、String sBackupFileName)
私はデータベースに接続するために次のコードを使用しています
Dim objBCPExport As New SQLDMO.BulkCopy2
Public objDB As SQLDMO.Database2
Dim objServer As New SQLDMO.SQLServer2
Public Function ConnectDatabaseWithRefresh(ByVal sServerName As String, ByVal sDatabaseName As String, ByVal sUserName As String, ByVal sPassword As String) As Boolean
Dim bResult As Boolean
Try
objServer = New SQLDMO.SQLServer2
objServer.EnableBcp = True
objServer.Connect(sServerName, sUserName, sPassword)
objDB = Nothing
objDB = objServer.Databases.Item(sDatabaseName)
objDB.DBOption.SelectIntoBulkCopy = True
bResult = True
Catch ex As Exception
bResult = False
End Try
Return bResult
End Function
ローカルホストで使用すると同じコードが正常に動作し(SQL Server 2005が含まれます)、ホスティングサーバーで使用すると(SQL Server 2008が含まれます)上記のエラーが発生します
これらの変数の初期化でエラーが発生します。
Dim objBCPExport As New SQLDMO.BulkCopy2
私が使用している接続文字列は
Dim cnnNewDB As New SqlConnection("Data Source=" + pServer + "Initial Catalog=" + pDatabase + ";Persist Security Info=True;User ID=" + pUserName + ";Password=" + pPassword)
誰かが私が問題を解決するのを手伝ってくれませんか。
ありがとう、センディル。