在asp.net中创建动态SQL Server数据库

时间:2015-04-07 14:27:57

标签: c# sql asp.net sql-server vb.net

如何在C#中使用asp.net创建动态数据库?请帮我。顺便说一下,我使用了4-5种方法,但对我来说并不起作用。

一种方法是:

String str;
SqlConnection myConn = new SqlConnection("Data Source=(LocalDB)\v11.0;Integrated security=True;"); //database=master

str = "CREATE DATABASE MyDatabase ON PRIMARY " +
      "(NAME = MyDatabase_Data, " +
      "FILENAME = 'C:\\MyDatabaseData.mdf', " +
      "SIZE = 2MB, MAXSIZE = 10MB, FILEGROWTH = 10%) " +
      "LOG ON (NAME = MyDatabase_Log, " +
      "FILENAME = 'C:\\MyDatabaseLog.ldf', " +
      "SIZE = 1MB, " +
      "MAXSIZE = 5MB, " +
      "FILEGROWTH = 10%)";

SqlCommand myCommand = new SqlCommand(str, myConn);

try
{
    myConn.Open();
    myCommand.ExecuteNonQuery();

    Label1.Text = "Database is created successfully";
}
catch (System.Exception ex)
{
    Label1.Text = ex.Message;
}
finally
{
    if (myConn.State == ConnectionState.Open)
    {
        myConn.Close();
    }
}

3 个答案:

答案 0 :(得分:2)

也许您可以尝试这些方式参考Error creating an SQL Server Database in Visual Studio

  1. SQL Server应该已启动并正在运行

  2. 在SQL Server配置中启用TCP / IP

  3. 在Windows防火墙中打开端口

  4. 启用远程连接

  5. 启用SQL Server Browser服务

  6. 在防火墙

  7. 中创建sqlbrowser.exe的例外
  8. 重新创建别名

  9. 希望它有所帮助。

答案 1 :(得分:1)

首先,您需要连接到服务器上的master数据库

new SqlConnection("Data Source=ServerName;Database=master;Integrated security=True;");

另外,您的数据库大小需要至少为5MB,这是SQL Server核心功能所必需的。

CREATE DATABASE MyDatabase ON PRIMARY  
(NAME       = MyDatabase_Data,  
FILENAME    = 'C:\MyDatabaseData.mdf',  
SIZE        = 5MB,    --<-- File size needs to be minimum 5MB 
MAXSIZE     = 10MB, 
FILEGROWTH  = 10%)  
LOG ON 
(NAME       = MyDatabase_Log,  
FILENAME    = 'C:\MyDatabaseLog.ldf',  
SIZE        = 1MB,  
MAXSIZE     = 5MB,  
FILEGROWTH  = 10%);

否则,您会收到类似The database primary file must be at least 5 MB to accommodate a copy of the model database bla bla.....

之类的错误

答案 2 :(得分:0)

非常感谢Angus Chung,你是一个很棒的人。他只是通过团队观察者帮助我,并告诉我wt是错误的......其实我正在使用它 &#34;数据源=(LocalDB)\ v11.0;&#34;

但它应该是&#34;数据源=(LocalDB)\ v11.0;&#34;好好抓..谢谢.. !!!