熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> SQL Server >> 正文

C#的OLE DB方式SQL Server編程

2013-11-15 14:36:35  來源: SQL Server 

  Visual StudioNET的中文Beta 版本推出已有一段時日了相比早期的Beta 版本新版本各方面都有很大的變化其中包括SQL Server編程方面在中文Beta 數據庫的存取普遍改用了OLE DB的方式由於數據庫編程是企業級應用開發的核心本文將舉例闡述中文Bete 版本中的SQL Server編程方法
  
  初始設置
  首先我們需在應用系統中安裝SQL Server Microsoft OLE DB Provider for SQL Server (SQL OLE D也會同時被自動安裝接著用SQL Server的Enterprise Manager創建一個叫tyjdb的數據庫並新建一名為address的數據表其含nameemailage和address四個字段
  
  打開VS開發環境中的視圖選單項中的服務器資源管理器該管理器可管理SQL Server及其他各種OLE DB的數據庫連接並可以管理其中的數據接著我們添加一個新的數據連接連接屬性選擇Microsoft OLE DB Provider for SQL server然後選好服務器及數據庫tyjdb測試連接成功後按確定使用該工具可又快又准地生成需要的數據庫連接字符串
  
  連接數據庫
  新建一個ASPNET項目或WindowsNET應用程序因為二者的數據庫存取程序是相同的將服務器資源管理器中的數據連接拖至新建的Web Form上即可這時自動生成了一個連接字符串如下
  
  thissqlConnectionConnectionString
  = data source=WHOAMI;
  initial catalog=tyjdb;
  integrated security=SSPI;
  persist security info=False;
  workstation id=WHOAMI;
  packet size=;
  其中WHOAMI為筆者的服務器名
  
  選取工具箱中的SqlDataAdapter並拖至該Web Form提示時選取tyjdb的數據連接選擇使用SQL語句訪問數據庫生成SQL語句時只填入SELECTFROM ADDRESS確認完成即可程序生成代碼如下
  
  protected SystemDataSqlClientSqlDataAdapter sqlDataAdapter;
  //存取數據庫的主要類
  protected SystemDataSqlClientSqlCommand sqlSelectCommand;
  //SQL語句處理的類
  protected SystemDataSqlClientSqlConnection sqlConnection;
  //連接數據庫的類
  在InitializeComponent()中有如下聲明
  thissqlConnection = new SystemDataSqlClientSqlConnection();
  thissqlDataAdapter = new SystemDataSqlClientSqlDataAdapter();
  thissqlSelectCommand = new SystemDataSqlClientSqlCommand();
  thissqlDataAdapterSelectCommand = thissqlSelectCommand;
  thissqlSelectCommandCommandText = SELECT name email age address FROM address;
  thissqlSelectCommandConnection = thissqlConnection;
  
  為使Table中數據能在Web Form中顯示加入一個DataGrid控件至Web Form上並在Page_Init中加入如下語句
  
  sqlConnectionOpen();
  //打開數據庫連接
  DataSet objDataset;
  //新建一個放數據的DataSet
  objDataset=new DataSet();
  sqlDataAdapterFill(objDataset address);
  //將數據填入DataSet
  DataGridDataSource=objDatasetTables[address]DefaultView;
  //關聯DataSet和DataGrid
  DataGridDataBind();
  //綁定數據
  sqlConnectionClose();
  //關閉數據庫連接
  
  編譯執行後Web Form已可將數據庫中數據顯示在DataGrid中了
  
  增加數據
  若想增加數據庫數據時我們只需在Web Form上新增對應字段數量個數的TextBox並新增一個按鍵接著為該按鍵增加Click事件具體代碼如下
  
  sqlInsertCommandParameters[@name]Value=TextBoxText;
  //將TextBox賦值給對應參數
  sqlInsertCommandParameters[@email]Value=TextBoxText;
  sqlInsertCommandParameters[@age]Value=TextBoxText;
  sqlInsertCommandParameters[@address]Value=TextBoxText;
  sqlInsertCommandConnectionOpen();
  //打開連接
  sqlInsertCommandExecuteNonQuery();
  //執行Insert語句
  sqlInsertCommandConnectionClose();
  //關閉連接
  sqlConnectionOpen();
  DataSet objDataset;
  //下面程序段更新DataGrid
  objDataset=new DataSet();
  sqlDataAdapterFill(objDataset address);
  DataGridDataSource=objDatasetTables[address]DefaultView;
  DataGridDataBind();
  
  執行這段程序時只需在TextBox中填入要添加的記錄字段的值然後按該按鍵即可執行添加功能
  
  刪除數據
  若想刪除數據庫數據時我們則需在Web Form上新增一個TextBox及一個按鍵為該按鍵增加如下代碼
  
  SqlCommand sqlDeleteCommand = new SystemDataSqlClientSqlCommand();
  //聲明Sql Command類對象
  thissqlDataAdapterDeleteCommand = sqlDeleteCommand;
  sqlDeleteCommandCommandText=DELETE FROM ADDRESS WHERE NAME=+TextBoxText+;
  //SQL語句
  sqlDeleteCommandConnection = thissqlConnection;
  //聲明使用的數據連接
  sqlDeleteCommandConnectionOpen();
  sqlDeleteCommandExecuteNonQuery();
  //執行該SQL語句
  sqlDeleteCommandConnectionClose();
  
  執行這段程序時只需在TextBox中填入要刪除的記錄name字段的值然後按該按鍵即可執行刪除功能
  
  更新操作原理都類同具體開發中可以有許多技巧豐富完善上述程序如增加錯誤處理等這裡限於篇幅不一一敘述了
  
  綜上可知充分利用Visual StudioNET的開發環境來簡化程序設計對提高編程效率和質量極有好處
  
  上述程序均用C#開發在中文Windows ServerSQL Server Visual StudioNET中文Beta 環境下編譯並正常運行中文顯示正常
From:http://tw.wingwit.com/Article/program/SQLServer/201311/22058.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.