Database already exist. Choose a Different Name using CreateDatabase()

前端 未结 4 945
走了就别回头了
走了就别回头了 2020-12-15 11:47

I got an issue and learned something at the same time....

I created a DBML from an existing server database.

From the DBML I wanted to create local database

相关标签:
4条回答
  • 2020-12-15 12:21

    A solution (via here) is to use SSEUtil to detach the existing db:

    try
    {
        // open a connection to the database for test
    }
    catch (SystemException ex) // Change exception type based on your underlying data provider
    {
        if (ex.Message.ToLower().Contains("already exists. choose a different database name"))
        {
            var match = Regex.Match(ex.Message, "database '(.*)' already exists.", 
               RegexOptions.IgnoreCase);
    
            if (match.Success)
            {
                String dbFileName = match.Groups[1].Value;
                Process p = new Process();
                p.StartInfo.UseShellExecute = true;
                p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
                p.StartInfo.FileName = String.Format("{0}/Tools/SSEUtil.exe", 
                  Environment.CurrentDirectory);
                p.StartInfo.WorkingDirectory = Environment.CurrentDirectory;
                p.StartInfo.Arguments = String.Format("-d \"{0}\"", dbFileName);
    
                p.Start();
            }
        }
    }
    
    0 讨论(0)
  • 2020-12-15 12:23

    Here's a quick fix for a localDB mess. Just connect to (localdb)\MSSQLLocalDB in SQL Mgmt. Studio/Visual Studio.

    Then delete the offender, checking "Close existing connections"

    0 讨论(0)
  • 2020-12-15 12:27

    You need to open master database via server explorer in Visual Studio (Add New Connection + Select master database) then add a New query, type Drop Database xxxx and execute it. You can also use Sql Server Management Studio.

    0 讨论(0)
  • 2020-12-15 12:29

    I also actually had this same problem. Previously, I deleted (cut) the database in mysqlserver2012 and copied it to my application folder. After I made my app I got this error, and solved it by removing the Initial Catalog part of my Connection String.

    Your final connection string should look something like this:

    Data Source=<your server name>;AttachDbFileName=database path\databaseName.mdf;Integrated Security=True" + ";User Instance=True" + ";Context Connection=False;

    0 讨论(0)
提交回复
热议问题