以编程方式创建数据库

时间:2010-08-19 11:41:56

标签: c# sql sql-server database database-create

我正在尝试用C#编程创建数据库。我有用于创建数据库的脚本,当我从SQL Server Management Studio运行它们时可以正常工作。但是,当我从C#应用程序运行相同的脚本时,会发生以下错误:

  

Microsoft.SqlServer.ConnectionInfo.dll中出现未处理的“Microsoft.SqlServer.Management.Common.ExecutionFailureException”类型异常

关于为什么会发生这种情况的任何想法?

2 个答案:

答案 0 :(得分:0)

只是为了让你知道有一个c#框架工作,它将为你做这一切。 http://www.sharparchitecture.net/它将从OO模型构建您的数据库和数据访问层。

答案 1 :(得分: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