程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> C#的OLEDB方式SQLServer編程

C#的OLEDB方式SQLServer編程

編輯:關於SqlServer
Visual Studio.Net的中文Beta 2版本推出已有一段時日了,相比早期的Beta 1版本,新版本各方面都有很大的變化,其中包括SQL Server編程方面,在中文Beta 2中,數據庫的存取普遍改用了OLE DB的方式。由於數據庫編程是企業級應用開發的核心,本文將舉例闡述中文Bete 2版本中的SQL Server編程方法。
  
  初始設置
  首先,我們需在應用系統中安裝SQL Server 2000,Microsoft OLE DB Provider for SQL Server (SQL OLE D也會同時被自動安裝,接著用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項目或Windows.Net應用程序,因為二者的數據庫存取程序是相同的。將服務器資源管理器中的數據連接拖至新建的Web Form上即可,這時自動生成了一個連接字符串如下:
  
  this.sqlConnection1.ConnectionString
  = "data source=WHOAMI;
  initial catalog=tyjdb;
  integrated security=SSPI;
  persist security info=False;
  workstation id=WHOAMI;
  packet size=4096";
  其中WHOAMI為筆者的服務器名。
  
  選取工具箱中的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及一個按鍵,為該按鍵增加如下代碼:
  
  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.Connectio
您正在看的SQLserver教程是:C#的OLEDB方式SQLServer編程。n.Close();
  
  執行這段程序時,只需在TextBox5中填入要刪除的記錄name字段的值,然後按該按鍵即可執行刪除功能。
  
  更新操作原理都類同,具體開發中可以有許多技巧豐富完善上述程序,如增加錯誤處理等,這裡限於篇幅不一一敘述了。
  
  綜上可知,充分利用Visual Studio.Net的開發環境來簡化程序設計對提高編程效率和質量極有好處。
  
  上述程序均用C#開發,在中文Windows 2000 Server、SQL Server 2000、Visual Studio.Net中文Beta 2環境下,編譯並正常運行,中文顯示正常。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved