国产黄色免费网站,人人干人人干人人干,免费大黄网站在线看,国产情侣一区二区三区,99精品国产福利免费一区二区,国产亚洲成归v人片在线观看,伊人88

2023信創(chuàng)獨(dú)角獸企業(yè)100強(qiáng)
全世界各行各業(yè)聯(lián)合起來,internet一定要實(shí)現(xiàn)!

Visual C#的SQL Server編程

2004-02-10 eNet&Ciweek

  Visual Studio.NET的中文Beta 2版本推出已有一段時日了,相比早期的Beta 1版本,新版本各方面都有很大的變化,其中包括SQL Server編程方面,在中文Beta 2中,數(shù)據(jù)庫的存取普遍改用了OLE DB的方式。由于數(shù)據(jù)庫編程是企業(yè)級應(yīng)用開發(fā)的核心,本文將舉例闡述中文Bete 2版本中的SQL Server編程方法。

  初始設(shè)置   

  首先,我們需在應(yīng)用系統(tǒng)中安裝SQL Server 2000,Microsoft OLE DB Provider for SQL Server (SQL OLE DB)也會同時被自動安裝,接著用SQL Server的Enterprise Manager創(chuàng)建一個叫tyjdb的數(shù)據(jù)庫,并新建一名為address的數(shù)據(jù)表,其含name、email、age和address四個字段。

  打開VS開發(fā)環(huán)境中的視圖選單項(xiàng)中的服務(wù)器資源管理器,該管理器可管理SQL Server及其他各種OLE DB的數(shù)據(jù)庫連接,并可以管理其中的數(shù)據(jù)。接著我們添加一個新的數(shù)據(jù)連接,連接屬性選擇Microsoft OLE DB Provider for SQL server,然后選好服務(wù)器及數(shù)據(jù)庫tyjdb,測試連接成功后按確定。使用該工具可又快又準(zhǔn)地生成需要的數(shù)據(jù)庫連接字符串。

  連接數(shù)據(jù)庫   

  新建一個ASP.NET項(xiàng)目或Windows.NET應(yīng)用程序,因?yàn)槎叩臄?shù)據(jù)庫存取程序是相同的。將服務(wù)器資源管理器中的數(shù)據(jù)連接拖至新建的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為筆者的服務(wù)器名。

  選取工具箱中的SqlDataAdapter并拖至該Web Form,提示時選取tyjdb的數(shù)據(jù)連接,選擇使用SQL語句訪問數(shù)據(jù)庫,生成SQL語句時只填入SELECTFROM ADDRESS,確認(rèn)完成即可。程序生成代碼如下:

    protected System.Data.SqlClient.SqlDataAdapter sqlDataAdapter1;

  //存取數(shù)據(jù)庫的主要類

  protected System.Data.SqlClient.SqlCommand sqlSelectCommand1;

  //SQL語句處理的類

  protected System.Data.SqlClient.SqlConnection sqlConnection1;

  //連接數(shù)據(jù)庫的類

  在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中數(shù)據(jù)能在Web Form中顯示,加入一個DataGrid控件至Web Form上,并在Page_Init中加入如下語句:

  sqlConnection1.Open();

  //打開數(shù)據(jù)庫連接

  DataSet objDataset;

  //新建一個放數(shù)據(jù)的DataSet

  objDataset=new DataSet();

  sqlDataAdapter1.Fill(objDataset, "address");

  //將數(shù)據(jù)填入DataSet

  DataGrid1.DataSource=objDataset.Tables["address"].DefaultView;

  //關(guān)聯(lián)DataSet和DataGrid

  DataGrid1.DataBind();

  //綁定數(shù)據(jù)

  sqlConnection1.Close();

  //關(guān)閉數(shù)據(jù)庫連接

  編譯執(zhí)行后Web Form已可將數(shù)據(jù)庫中數(shù)據(jù)顯示在DataGrid中了。 (未完)  
  增加數(shù)據(jù)  

  若想增加數(shù)據(jù)庫數(shù)據(jù)時,我們只需在Web Form上新增對應(yīng)字段數(shù)量個數(shù)的TextBox,并新增一個按鍵,接著為該按鍵增加Click事件,具體代碼如下:

  sqlInsertCommand1.Parameters["@name"].Value=TextBox1.Text;

  //將TextBox賦值給對應(yīng)參數(shù)

  sqlInsertCommand1.Parameters["@email"].Value=TextBox2.Text;

  sqlInsertCommand1.Parameters["@age"].Value=TextBox3.Text;

  sqlInsertCommand1.Parameters["@address"].Value=TextBox4.Text;

  sqlInsertCommand1.Connection.Open();

  //打開連接

  sqlInsertCommand1.ExecuteNonQuery();

  //執(zhí)行Insert語句

  sqlInsertCommand1.Connection.Close();

  //關(guān)閉連接

  sqlConnection1.Open();

  DataSet objDataset;

  //下面程序段更新DataGrid

  objDataset=new DataSet();

  sqlDataAdapter1.Fill(objDataset, "address");

  DataGrid1.DataSource=objDataset.Tables["address"].DefaultView;

  DataGrid1.DataBind();

  執(zhí)行這段程序時,只需在TextBox中填入要添加的記錄字段的值,然后按該按鍵即可執(zhí)行添加功能。

  刪除數(shù)據(jù)

  若想刪除數(shù)據(jù)庫數(shù)據(jù)時,我們則需在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;

  //聲明使用的數(shù)據(jù)連接

  sqlDeleteCommand1.Connection.Open();

  sqlDeleteCommand1.ExecuteNonQuery();

  //執(zhí)行該SQL語句

  sqlDeleteCommand1.Connection.Close();

  執(zhí)行這段程序時,只需在TextBox5中填入要刪除的記錄name字段的值,然后按該按鍵即可執(zhí)行刪除功能。

  更新操作原理都類同,具體開發(fā)中可以有許多技巧豐富完善上述程序,如增加錯誤處理等,這里限于篇幅不一一敘述了。

  綜上可知,充分利用Visual Studio.NET的開發(fā)環(huán)境來簡化程序設(shè)計對提高編程效率和質(zhì)量極有好處。  

  上述程序均用C#開發(fā),在中文Windows 2000 Server、SQL Server 2000、Visual Studio.NET中文Beta 2環(huán)境下,編譯并正常運(yùn)行,中文顯示正常。 (完)

相關(guān)頻道: eNews

您對本文或本站有任何意見,請在下方提交,謝謝!

投稿信箱:tougao@enet16.com