在vs.net bate 2中的ado.net簡單程式設計(傻瓜版) (轉)

worldblog發表於2007-12-09
在vs.net bate 2中的ado.net簡單程式設計(傻瓜版) (轉)[@more@]

  這篇文章只適合初學者,如果你是大蝦,這篇文章就是浪費你的時間。

首先,->興建->專案。專案型別:,應用。

在工具箱中拖一個dataadapter到form視窗中。

嚮導先點下一步,新建連線,在連線標籤下,選取一個可用的和可用的sqlserver,確定。

然後查詢生成器(太簡單就不說了)。完成。

在webform中點選sqldataadapter1在屬性欄的下面點生成資料集。單選框用新建,確定。

至此,和資料庫的連線工作基本搞定了,讓我們來操作它吧。

拖一個datagrid到webfo視窗。屬性生成器中選好資料來源(我們只有一個dataset)也就這樣了。

然後我們來看看程式碼。

切換到程式碼視窗,新增黃色的程式碼:

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace WebApplication1
{
 ///


 /// Summary description for WebForm1.
 ///

 public class WebForm1 : System.Web.UI.Page
 {
 protected System.Data.SqlClient.SqlDataAdapter sqlDataAdapter1;
 protected System.Data.SqlClient.SqlCommand sqlCommand1;
 protected System.Data.SqlClient.SqlCommand sqlInsertCommand1;
 protected System.Data.SqlClient.SqlConnection sqlConnection1;
 protected System.Web.UI.WebControls.DataGrid DataGrid1;
 protected System.Web.UI.WebControls.Button Button1;
 protected System.Data.SqlClient.SqlDataAdapter sqlDataAdapter2;
 protected System.Data.SqlClient.SqlCommand sqlSelectCommand2;
 protected System.Data.SqlClient.SqlCommand sqlInsertCommand2;
 protected System.Data.SqlClient.SqlCommand sqlUpdateCommand1;
 protected System.Data.SqlClient.SqlCommand sqlDeleteCommand1;
 protected System.Data.SqlClient.SqlConnection sqlConnection2;
 protected System.Web.UI.WebControls.DataGrid DataGrid2;
 protected WebApplication1.DataSet1 dataSet11;
 
 public WebForm1()
 {
 Page.Init += new System.EventHandler(Page_Init);
 }

 private void Page_Load( sender, System.EventArgs e)
 {
 // Put user code to initialize the page here
 }

 private void Page_Init(object sender, EventArgs e)
 {
 //
 // CODEGEN: This call is required by the Web Form Designer.
 //
 InitializeComponent();
 //填充資料集 

 sqlDataAdapter1.Fill (dataSet11);

//繫結
 DataGrid1.DataBind ();
 
 } #region Web Form Designer generated code
 ///


 /// Required method for Designer support - do not modify
 /// the contents of this method with the code editor.
 ///

 private void InitializeComponent()

 #endregion

 }

生成程式,如果正常的話你應該可以在datagrid看到你的資料了。

如果你對操作的資料有更高的要求的話(前提是會sql語句),你可以點飢前面綠色程式碼前的小加號,修改下面的蘭色程式碼。
 private void InitializeComponent()
 { 
 this.sqlConnection1 = new System.Data.SqlClient.SqlConnection();
 this.dataSet11 = new WebApplication1.DataSet1();
 this.sqlInsertCommand1 = new System.Data.SqlClient.SqlCommand();
 this.sqlSelectCommand1 = new System.Data.SqlClient.SqlCommand();
 this.sqlDataAdapter1 = new System.Data.SqlClient.SqlDataAdapter();
 this.sqlDataAdapter2 = new System.Data.SqlClient.SqlDataAdapter();
 this.sqlSelectCommand2 = new System.Data.SqlClient.SqlCommand();
 this.sqlInsertCommand2 = new System.Data.SqlClient.SqlCommand();
 this.sqlUpdateCommand1 = new System.Data.SqlClient.SqlCommand();
 this.sqlDeleteCommand1 = new System.Data.SqlClient.SqlCommand();
 this.sqlConnection2 = new System.Data.SqlClient.SqlConnection();
 ((System.ComponentModel.ISupportInitialize)(this.dataSet11)).BeginInit();
 this.Button1.Click += new System.EventHandler(this.Button1_Click);
 //
 // sqlConnection1
 //
 this.sqlConnection1.ConnectionString = "data =(local);initial catalog=xr;integrated security=SSPI;persist security " +
 "info=False;workstation id=XURUI;packet size=4096";
 //
 // dataSet11
 //
 this.dataSet11.DataSetName = "DataSet1";
 this.dataSet11.Locale = new System.Globalization.CultureInfo("zh-CN");
 this.dataSet11.Namespace = "";
 //
 // sqlInsertCommand1
 //
 this.sqlInsertCommand1.CommandText = "INSERT INTO store(zipcode, area, name) VALUES (@zipcode, @area, @name); SELECT zi" +
 "pcode, area, name FROM store";
 this.sqlInsertCommand1.Connection = this.sqlConnection1;
 this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@zipcode", System.Data.SqlType.Char, 10, System.Data.ParameterDirection.Input, true, ((System.Byte)(0)), ((System.Byte)(0)), "zipcode", System.Data.DataRowVersion.Current, null));
 this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@area", System.Data.SqlDbType.Char, 10, System.Data.ParameterDirection.Input, true, ((System.Byte)(0)), ((System.Byte)(0)), "area", System.Data.DataRowVersion.Current, null));
 this.sqlInsertCommand1.Parameters.Add(new System.Data.SqlClient.SqlParameter("@name", System.Data.SqlDbType.Char, 10, System.Data.ParameterDirection.Input, true, ((System.Byte)(0)), ((System.Byte)(0)), "name", System.Data.DataRowVersion.Current, null));
 //
 // sqlSelectCommand1
 //
 this.sqlSelectCommand1.CommandText = "SELECT zipcode, area, name FROM store ";
 this.sqlSelectCommand1.Connection = this.sqlConnection1;
 //
 // sqlDataAdapter1
 //
 this.sqlDataAdapter1.InsertCommand = this.sqlInsertCommand1;
 this.sqlDataAdapter1.SelectCommand = this.sqlSelectCommand1;
 this.sqlDataAdapter1.TableMaps.AddRange(new System.Data.Common.DataTableMapping[] {
  new System.Data.Common.DataTableMapping("Table", "store", new System.Data.Common.DataColumnMapping[] {....................................

...........................

你可以根據自己的需要生成資料集。

加入新列你可以這樣做:

 DataTable dt;//定義一個表(廢話)
 dt=dataSet11.Tables ["你的表"];//給表付值

 DataRow dr;
 dr=dt.NewRow ();//新元組
 dr.BeginEdit ();
 dr["屬性1"]= ;

dr["屬性2"]=;

dr["屬性3"]=;

  dr.EndEdit ();
 dt.Rows.Add (dr);//加入元組
 DataGrid1.DataBind ();//把改變在datagrid中表示出來,不寫也可以但是沒現象了。
 修改的程式碼:

dr= tblAuthors.Rows.Find("213-46-8915");//找到元組(預設為找主碼)
dr.BeginEdit();
dr["屬性1"] = "342" ;

 dr("屬性2")=“2342”;

dr.EndEdit()

刪除程式碼:

drCurrent = tblAuthors.Rows.Find("993-21-3427");
drCurrent.Delete();

以上的操作只是對資料集 如果你要把改變儲存回資料庫還要添一句:

sqlDataAdapter1.Update (dataSet11,"store");

我的文章就此為止。

由於做設計的緣故,我現在對ADO. net很有興趣,如果有人想討論,e:

xurui_@.com


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-990327/,如需轉載,請註明出處,否則將追究法律責任。

相關文章