- using System;
- using System.Data;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- //加入SQL的命名空间
- using System.Data.SqlClient;
- public partial class command : System.Web.UI.Page
- {
- protected void Page_Load(object sender, EventArgs e)
- {
- if (!Page.IsPostBack)
- {
- ConnectDB();
- }
- }
- /// <summary>
- /// 动态创建数据库
- /// </summary>
- public void ConnectDB()
- {
- //创建一个新连接
- SqlConnection conn = new SqlConnection();
- //已经存在的数据库master的连接字符串
- string connToMaster = "Server=localhost;DataBase=master;UID=sa;PWD=";
- //新建数据库的连接字符串
- string connToDb = "Server=localhost;DataBase=SEAJACK;UID=sa;PWD=";
- //创建数据库的Sql语句,将来由已经存在的数据库连接执行此命令
- //先判断数据库及数据表是否存在
- string createDbStr = "if NOT exists"+
- "("+"select * from master.dbo.sysdatabases where name "+"= '"+"SEAJACK"+"')"+"Create database [SEAJACK]";
- string createTableStr = "if NOT exists"+"("+"select count(*) from sysobjects where id "+"= object_id"+"('"+"SEAJACK.Owner.example"+"'))"
- + "create table example ([序号] int primary key,[姓名] Nchar(5))";
- string insertStr = "insert into example values(3,'汤海龙')";
- string selectStr = "select * from example";
- //创建一个新的SqlCommand对象
- SqlCommand cmd = new SqlCommand(createDbStr, conn);
- //首先连接到已经存在的数据库master,
- conn.ConnectionString = connToMaster;
- conn.Open();
- //执行了下面的语句,就执行了SQL语句,即创建了数据库
- cmd.ExecuteNonQuery();
- //conn.ChangeDatabase("SEAJACK");
- conn.Close();
- //关闭旧连接,打开新连接
- conn.ConnectionString = connToDb;
- conn.Open();
- //
- //int at = (int)cmd.ExecuteScalar();
- cmd.CommandText = createTableStr;
- cmd.ExecuteNonQuery();
- cmd.CommandText = insertStr;
- cmd.ExecuteNonQuery();
- conn.Close();
- cmd.CommandText = selectStr;
- SqlDataAdapter da = new SqlDataAdapter(cmd);
- DataTable dt = new DataTable();
- da.Fill(dt);
- GridView gv = new GridView();
- form1.Controls.Add(gv);
- gv.AutoGenerateColumns = true;
- gv.DataSource = dt;
- gv.DataBind();
- }
- }
在ASP.NET中动态创建数据库
最新推荐文章于 2021-01-26 10:55:18 发布