您的位置:首页 > 编程语言 > ASP

ASP.NET动态创建数据库和表

2015-11-26 10:57 621 查看
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{
ConnectDB();
}

public void ConnectDB()
{
//创建一个新连接
SqlConnection conn = new SqlConnection();
//已经存在的数据库master的连接字符串
string connToMaster = "Server=localhost;DataBase=master;UID=sa;PWD=123456";
//新建数据库的连接字符串
string connToDb = "Server=localhost;DataBase=SSPU;UID=sa;PWD=123456";
//创建数据库的Sql语句,将来由已经存在的数据库连接执行此命令
//先判断数据库及数据表是否存在
string createDbStr = "if NOT exists"+
"(" + "select * from master.dbo.sysdatabases where name " + "= '" + "SSPU" + "')" + "Create database [SSPU]";
string createTableStr = "if not exists(select * from sysobjects where xtype='u' and name='student')create table student (s_id int primary key,name Nchar(5))";

string insertStr = "insert into student values(1,N'小米')";
string selectStr = "select * from student";
//创建一个新的SqlCommand对象
SqlCommand cmd = new SqlCommand(createDbStr, conn);
//首先连接到已经存在的数据库master,
conn.ConnectionString = connToMaster;
conn.Open();
//执行了下面的语句,就执行了SQL语句,即创建了数据库
cmd.ExecuteNonQuery();
//conn.ChangeDatabase("SSPU");
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();
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: