C#自动创建数据库实现代码

所属分类: 软件编程 / C#教程 阅读数: 136
收藏 0 赞 0 分享
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> 
    /// 创建连接起用进程建立数据库 
    /// </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");//调用ExecuteNonQuery()来创建数据库 

            System.Diagnostics.Process sqlProcess = new System.Diagnostics.Process();//创建一个进程 

            sqlProcess.StartInfo.FileName = "osql.exe";//OSQL基于ODBC驱动连接服务器的一个实用工具(可查阅SQL帮助手册) 
            //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";//获取启动程序时的参数 
            sqlProcess.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;//调用进程的窗口状态,隐藏为后台
sqlProcess.Start(); 
            sqlProcess.WaitForExit(); 
            sqlProcess.Close(); 
            return true; 
        } 
        catch (Exception ex) 
        { 
            throw ex; 
        } 
    } 

    /// <summary> 
    /// 创建数据库,调用ExecuteNonQuery()执行 
    /// </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# 大小写转换(金额)实例代码

C# 大小写转换(金额)实例代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

C# WinForm中Panel实现用鼠标操作滚动条的实例方法

由于在WinForm中Panel不能直接响应鼠标的滚动事件,只好采用捕获窗体的滚动事件。
收藏 0 赞 0 分享

C#访问应用程序配置文件的方法

C#访问应用程序配置文件的方法,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#读写文件的方法汇总

C#读写文件的方法汇总,需要的朋友可以参考一下
收藏 0 赞 0 分享

C#计算代码执行时间的方法

在一些测试工作时我们需要获得高精度的代码执行时间以比较其效率。
收藏 0 赞 0 分享

C# 动画窗体(AnimateWindow)的小例子

C# 动画窗体(AnimateWindow)的小例子,需要的朋友可以参考一下
收藏 0 赞 0 分享

C# zxing二维码写入的实例代码

C# zxing二维码写入的实例代码,需要的朋友可以参考一下
收藏 0 赞 0 分享

c#判断输入的是不是数字的小例子

c#判断输入的是不是数字的小例子,需要的朋友可以参考一下
收藏 0 赞 0 分享

c# 深拷贝与浅拷贝的区别分析及实例

浅拷贝(影子克隆):只复制对象的基本类型,对象类型,仍属于原来的引用. 深拷贝(深度克隆):不紧复制对象的基本类,同时也复制原对象中的对象.就是说完全是新对象产生的.
收藏 0 赞 0 分享

C#利用com操作excel释放进程的解决方法

最近利用Microsoft.Office.Interop.Excel.Application读取一个excel后,进程中一直存在excel,在网上找了一阵子,其中有几个解决方案
收藏 0 赞 0 分享
查看更多