Visual C#的SQL Server編程
源作者:追風 Visual Studio.NET的中文Beta 2版本推出已有一段時日了.在中文Beta 2中, 數據庫 的存取普遍改用了OLE DB的方式。由于數據庫編程是企業級應用 開發 的核心,本文將舉例闡述中文Bete 2版本中的SQL Server編程方法。 初始設置 首先,我們需在應用
源作者:追風
Visual Studio
.NET的中文Beta 2版本推出已有一段時日了.在中文Beta 2中,
數據庫的存取普遍改用了OLE DB的方式。由于
數據庫編程是企業級應用
開發的核心,本文將舉例闡述中文Bete 2版本中的
SQL Server編程方法。
初始設置
首先,我們需在應用系統中安裝
SQL Server 2000,Microsoft OLE DB Provider for
SQL Server (SQL OLE DB)也會同時被自動安裝,接著用SQL Server的Enterprise Manager創建一個叫tyjdb的數據庫,并新建一名為address的數據表,其含name、email、age和address四個字段。
打開VS
開發環境中的視圖選單項中的
服務器資源管理器,該管理器可管理SQL Server及其他各種OLE DB的數據庫連接,并可以管理其中的數據。接著我們添加一個新的數據連接,連接屬性選擇Microsoft OLE DB Provider for SQL server,然后選好
服務器及數據庫tyjdb,
測試連接成功后按確定。使用該工具可又快又準地生成需要的數據庫連接字符串。
連接數據庫
新建一個ASP.NET項目。將服務器資源管理器中的數據連接拖至新建的
Web Form上即可,這時自動生成了一個連接字符串如下:
this.
sqlConnection1.ConnectionString = "data source=jeff;initial catalog=tyjdb;persist security info=False;user id=sa;workstation id=JEFF;packet size=4096";
其中jeff為筆者的服務器名,sa為服務器登錄名。
選取工具箱中的SqlDataAdapter并拖至該Web Form,提示時選取tyjdb的數據連接,選擇使用SQL語句訪問數據庫,生成SQL語句時只填入SELECT * FROM ADDRESS,確認完成即可。程序生成代碼如下:
protected System.Data.SqlClient.SqlDataAdapter sqlDataAdapter1;
//存取數據庫的主要類
protected System.Data.SqlClient.SqlCommand sqlSelectCommand1;
//SQL語句處理的類
protected System.Data.SqlClient.SqlConnection sqlConnection1;
//連接數據庫的類
在InitializeComponent()中有如下聲明:
this.sqlConnection1 = new System.Data.SqlClient.SqlConnection();
this.sqlDataAdapter1 = new System.Data.SqlClient.SqlDataAdapter();
this.sqlSelectCommand1 = new System.Data.SqlClient.SqlCommand();
this.sqlDataAdapter1.SelectCommand = this.sqlSelectCommand1;
this.sqlSelectCommand1.CommandText = "SELECT name, email, age, address FROM address";
this.sqlSelectCommand1.Connection = this.sqlConnection1;
為使Table中數據能在Web Form中顯示,加入一個DataGrid控件至Web Form上,并在Page_Init中加入如下語句:
sqlConnection1.Open();
//打開數據庫連接
DataSet objDataset;
//新建一個放數據的DataSet
objDataset=new DataSet();
sqlDataAdapter1.Fill(objDataset, "address");
//將數據填入DataSet
DataGrid1.DataSource=objDataset.Tables["address"].DefaultView;
//關聯DataSet和DataGrid
DataGrid1.DataBind();
//綁定數據
sqlConnection1.Close();
//關閉數據庫連接
編譯執行后Web Form已可將數據庫中數據顯示在DataGrid中了。
增加數據
若想增加數據庫數據時,我們只需在Web Form上新增對應字段數量個數的TextBox,并新增一個按鍵,接著為該按鍵增加Click事件,具體代碼如下:
sqlInsertCommand1.Parameters["@name"].Value=TextBox1.Text;
//將TextBox賦值給對應參數
sqlInsertCommand1.Parameters["@email"].Value=TextBox2.Text;
sqlInsertCommand1.Parameters["@age"].Value=TextBox3.Text;
sqlInsertCommand1.Parameters["@address"].Value=TextBox4.Text;
sqlInsertCommand1.Connection.Open();
//打開連接
sqlInsertCommand1.ExecuteNonQuery();
//執行Insert語句
sqlInsertCommand1.Connection.Close();
//關閉連接
sqlConnection1.Open();
DataSet objDataset;
//下面程序段更新DataGrid
objDataset=new DataSet();
sqlDataAdapter1.Fill(objDataset, "address");
DataGrid1.DataSource=objDataset.Tables["address"].DefaultView;
DataGrid1.DataBind();
執行這段程序時,只需在TextBox中填入要添加的記錄字段的值,然后按該按鍵即可執行添加功能。
刪除數據
若想刪除數據庫數據時,我們則需在Web Form上新增一個TextBox5及一個按鍵,為該按鍵增加如下代碼:
using System.Data.SqlClient;
//在代碼頭部加入名命空間
SqlCommand sqlDeleteCommand1 = new System.Data.SqlClient.SqlCommand();
//聲明Sql Command類對象
this.sqlDataAdapter1.DeleteCommand = sqlDeleteCommand1;
sqlDeleteCommand1.CommandText="DELETE FROM ADDRESS where NAME='"+TextBox5.Text+"'";
//SQL語句
sqlDeleteCommand1.Connection = this.sqlConnection1;
//聲明使用的數據連接
sqlDeleteCommand1.Connection.Open();
sqlDeleteCommand1.ExecuteNonQuery();
//執行該SQL語句
sqlDeleteCommand1.Connection.Close();
執行這段程序時,只需在TextBox5中填入要刪除的記錄name字段的值,然后按該按鍵即可執行刪除功能。
更新操作原理都類同,具體開發中可以有許多技巧豐富完善上述程序,如增加錯誤處理等,這里限于篇幅不一一敘述了。
綜上可知,充分利用Visual Studio.NET的開發環境來簡化程序設計對提高編程效率和
質量極有好處。
上述程序均用C#開發,在中文
Windows 2000 Professional、SQL Server 2000、Visual Studio.NET中文Beta 2環境下,編譯并正常運行,中文顯示正常。
原文轉自:http://www.anti-gravitydesign.com
- 評論列表(網友評論僅供網友表達個人看法,并不表明本站同意其觀點或證實其描述)
-
国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97
|