C#自動(dòng)創(chuàng)建數(shù)據(jù)庫(kù)實(shí)現(xiàn)代碼
更新時(shí)間:2008年03月09日 20:00:50 作者:
C#下創(chuàng)建數(shù)據(jù)庫(kù)的代碼
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class slu1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (execfile())
{
Response.Write("Success");
}
}
}
/// <summary>
/// 創(chuàng)建連接起用進(jìn)程建立數(shù)據(jù)庫(kù)
/// </summary>
/// <returns></returns>
private bool execfile()
{
try
{
string connStr = "data source=127.0.0.1;user id=sa;password=sa;persist security info=false;packet size=4096";
ExecuteSql(connStr, "master", "CREATE DATABASE" + " SqlTest");//調(diào)用ExecuteNonQuery()來(lái)創(chuàng)建數(shù)據(jù)庫(kù)
System.Diagnostics.Process sqlProcess = new System.Diagnostics.Process();//創(chuàng)建一個(gè)進(jìn)程
sqlProcess.StartInfo.FileName = "osql.exe";//OSQL基于ODBC驅(qū)動(dòng)連接服務(wù)器的一個(gè)實(shí)用工具(可查閱SQL幫助手冊(cè))
//string str = @"C:\Program Files\Microsoft SQL Server\MSSQL\Data";
sqlProcess.StartInfo.Arguments = " -U sa -P sa -d SqlTest -i C:\\Program Files\\Microsoft SQL Server\\MSSQL\\Data";//獲取啟動(dòng)程序時(shí)的參數(shù)
sqlProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;//調(diào)用進(jìn)程的窗口狀態(tài),隱藏為后臺(tái)
sqlProcess.Start();
sqlProcess.WaitForExit();
sqlProcess.Close();
return true;
}
catch (Exception ex)
{
throw ex;
}
}
/// <summary>
/// 創(chuàng)建數(shù)據(jù)庫(kù),調(diào)用ExecuteNonQuery()執(zhí)行
/// </summary>
/// <param name="conn"></param>
/// <param name="DatabaseName"></param>
/// <param name="Sql"></param>
private void ExecuteSql(string conn, string DatabaseName, string Sql)
{
System.Data.SqlClient.SqlConnection mySqlConnection = new System.Data.SqlClient.SqlConnection(conn);
System.Data.SqlClient.SqlCommand Command = new System.Data.SqlClient.SqlCommand(Sql, mySqlConnection);
Command.Connection.Open();
Command.Connection.ChangeDatabase(DatabaseName);
try
{
Command.ExecuteNonQuery();
}
finally
{
Command.Connection.Close();
}
}
}
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class slu1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (execfile())
{
Response.Write("Success");
}
}
}
/// <summary>
/// 創(chuàng)建連接起用進(jìn)程建立數(shù)據(jù)庫(kù)
/// </summary>
/// <returns></returns>
private bool execfile()
{
try
{
string connStr = "data source=127.0.0.1;user id=sa;password=sa;persist security info=false;packet size=4096";
ExecuteSql(connStr, "master", "CREATE DATABASE" + " SqlTest");//調(diào)用ExecuteNonQuery()來(lái)創(chuàng)建數(shù)據(jù)庫(kù)
System.Diagnostics.Process sqlProcess = new System.Diagnostics.Process();//創(chuàng)建一個(gè)進(jìn)程
sqlProcess.StartInfo.FileName = "osql.exe";//OSQL基于ODBC驅(qū)動(dòng)連接服務(wù)器的一個(gè)實(shí)用工具(可查閱SQL幫助手冊(cè))
//string str = @"C:\Program Files\Microsoft SQL Server\MSSQL\Data";
sqlProcess.StartInfo.Arguments = " -U sa -P sa -d SqlTest -i C:\\Program Files\\Microsoft SQL Server\\MSSQL\\Data";//獲取啟動(dòng)程序時(shí)的參數(shù)
sqlProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;//調(diào)用進(jìn)程的窗口狀態(tài),隱藏為后臺(tái)
sqlProcess.Start();
sqlProcess.WaitForExit();
sqlProcess.Close();
return true;
}
catch (Exception ex)
{
throw ex;
}
}
/// <summary>
/// 創(chuàng)建數(shù)據(jù)庫(kù),調(diào)用ExecuteNonQuery()執(zhí)行
/// </summary>
/// <param name="conn"></param>
/// <param name="DatabaseName"></param>
/// <param name="Sql"></param>
private void ExecuteSql(string conn, string DatabaseName, string Sql)
{
System.Data.SqlClient.SqlConnection mySqlConnection = new System.Data.SqlClient.SqlConnection(conn);
System.Data.SqlClient.SqlCommand Command = new System.Data.SqlClient.SqlCommand(Sql, mySqlConnection);
Command.Connection.Open();
Command.Connection.ChangeDatabase(DatabaseName);
try
{
Command.ExecuteNonQuery();
}
finally
{
Command.Connection.Close();
}
}
}
您可能感興趣的文章:
- C#動(dòng)態(tài)創(chuàng)建Access數(shù)據(jù)庫(kù)及表的方法
- C#連接操作 MySQL 數(shù)據(jù)庫(kù)實(shí)例(使用官方驅(qū)動(dòng))
- c#連接數(shù)據(jù)庫(kù)及sql2005遠(yuǎn)程連接的方法
- C#連接mysql數(shù)據(jù)庫(kù)完整實(shí)例
- C#連接數(shù)據(jù)庫(kù)和更新數(shù)據(jù)庫(kù)的方法
- C#查詢SqlServer數(shù)據(jù)庫(kù)并返回單個(gè)值的方法
- c#數(shù)據(jù)綁定之向查詢中添加參數(shù)(.Net連接外部數(shù)據(jù)庫(kù))
- 利用C#實(shí)現(xiàn)分布式數(shù)據(jù)庫(kù)查詢
- C#創(chuàng)建數(shù)據(jù)庫(kù)及附加數(shù)據(jù)庫(kù)的操作方法
相關(guān)文章
C#使用WebClient登錄網(wǎng)站并抓取登錄后的網(wǎng)頁(yè)信息實(shí)現(xiàn)方法
這篇文章主要介紹了C#使用WebClient登錄網(wǎng)站并抓取登錄后的網(wǎng)頁(yè)信息實(shí)現(xiàn)方法,涉及C#基于會(huì)話操作登陸網(wǎng)頁(yè)及頁(yè)面讀取相關(guān)操作技巧,需要的朋友可以參考下2017-05-05
WPF實(shí)現(xiàn)自帶觸控鍵盤(pán)的文本框
這篇文章實(shí)現(xiàn)了WPF自帶觸控鍵盤(pán)的文本框,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-10-10
C#靜態(tài)代碼織入AOP組件之Rougamo的使用詳解
Rougamo是一個(gè)靜態(tài)代碼織入的AOP組件,同為AOP組件較為常用的有Castle、Autofac、AspectCore等,下面就跟隨小編一起來(lái)學(xué)習(xí)一下它的具體使用吧2024-01-01
c#使用正則表達(dá)式匹配字符串驗(yàn)證URL示例
這篇文章主要介紹了c#使用正則表達(dá)式的小示例,匹配字符串、驗(yàn)證URL,大家參考使用吧2013-12-12
C#調(diào)用OutLokk實(shí)現(xiàn)發(fā)送郵件
這篇文章主要為大家詳細(xì)介紹了如何利用C#調(diào)用OutLokk實(shí)現(xiàn)發(fā)送郵件的功能,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下2022-12-12
C#實(shí)現(xiàn)Winform序在系統(tǒng)托盤(pán)顯示圖標(biāo)和開(kāi)機(jī)自啟動(dòng)
這篇文章主要為大家詳細(xì)介紹了C#如何實(shí)現(xiàn)Winform序在系統(tǒng)托盤(pán)顯示圖標(biāo)和開(kāi)機(jī)自啟動(dòng)功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解下2025-01-01

