0

C# でプログラムによってデータベースを作成しようとしています。SQL Server Management Studio から実行すると正常に動作するデータベース作成用のスクリプトがあります。ただし、C# アプリケーションから同じスクリプトを実行すると、次のエラーが発生します。

タイプ 'Microsoft.SqlServer.Management.Common.ExecutionFailureException' の未処理の例外が Microsoft.SqlServer.ConnectionInfo.dll で発生しました

なぜこれが起こっているのかについてのアイデアはありますか?

4

2 に答える 2

0

あなたのためにこれをすべて行うac#フレームワークがあることをあなたに知らせるためだけに。 http://www.sharparchitecture.net/OOモデルからDBとデータアクセス層を構築します。

于 2010-08-19T11:47:06.670 に答える
0

public string CreateDataBase(string ipAddress, string UserName, string Password,string DB_filepath) {

        Microsoft.SqlServer.Management.Smo.Server addDBserver = new     Microsoft.SqlServer.Management.Smo.Server(ipAddress);
        addDBserver.ConnectionContext.LoginSecure = false;
        addDBserver.ConnectionContext.Login = UserName;
        addDBserver.ConnectionContext.Password = Password;



        try
        {
            //*Crerate Databse*
            addDBserver.ConnectionContext.Connect();
            FileInfo filedb = new FileInfo(DB_filepath);
            string scriptdb = filedb.OpenText().ReadToEnd();
            string scriptdb1 = scriptdb.Replace("GO", Environment.NewLine);
            string scriptdb2 = scriptdb1.Replace("\r\nGO\r\n", "");
            addDBserver.ConnectionContext.ExecuteNonQuery(scriptdb2);
            addDBserver.ConnectionContext.Disconnect();
            string Msg;
                Msg = "db created successfully";
                return Msg;
            return true;


        }
        catch (Exception ex)
        {
       string Msg1 = "db notcreated successfully";
         return ex.Message;
           throw;
        }
    }
        //Database created Successfully
于 2010-08-19T12:14:58.747 に答える