ASP.NET資料入門

來源:互聯網
上載者:User
對於網站編程的初學者來說,總是會上網找些源碼來看,但久而久之還是停留在改代碼的階段,並不明白怎樣去寫一個完整的網站程式.有見如此我就開始寫這樣的文章(c#版),不足之處請批評指正.

資料庫連接篇

在WEB項目裡看到Web.config設定檔,在configuration這行加入下面代碼用於和SQL伺服器進行串連

<appSettings><!-- 資料庫連接字串 --><add key="ConnStr" value="Data Source=localhost;database=company;UID=sa;Password=;Persist Security Info=True;" /></appSettings>

資料列表顯示篇,

using System;using System.Data;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;//引用命名空間:SQL託管,設定檔using System.Data.SqlClient;using System.Configuration;public partial class _Default : System.Web.UI.Page {    protected SqlConnection myconn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);    //讀取web.config設定檔中的資料庫連接字串,並串連到指定的資料庫    protected void Page_Load(object sender, EventArgs e)    {        if(!IsPostBack)//判斷頁面是否第一次運行     {          string strsql="select * from Product";//定義一個資料庫的查詢字串                DataSet ds = new DataSet();                myconn.Open();//開啟資料庫連接                SqlDataAdapter command = new SqlDataAdapter(strsql,myconn);//表示用於填充DataSet 和更新SQL Server 資料庫的一組資料命令和一個資料庫連接                 command.Fill(ds, "Product");                productList.DataSource = ds.Tables[0].DefaultView;                productList.DataBind();                ds.Clear();          myconn.Close();//關閉資料庫連接            } }    protected void grid_ItemDataBound(object sender, DataGridItemEventArgs e)    {        foreach (System.Web.UI.WebControls.HyperLink link in e.Item.Cells[7].Controls)        {            link.Attributes.Add("onClick", "if (!window.confirm('您真的要刪除這條記錄嗎?')){return false;}");        }    }}

資料添加篇

protected void btnAdd_Click(object sender, EventArgs e)    {        string ProductId = this.txtProductId.Text;        string CategoryId = this.txtCategoryId.Text;        string Name = this.txtName.Text;        string Description = this.txtDescription.Text;        string Price =this.txtPrice.Text;        string sql_Exeits = "select * from Product where ProductId='" + ProductId + "'";        SqlCommand cmd_Exeits = new SqlCommand(sql_Exeits, myconn);        myconn.Open();        SqlDataReader rdr = cmd_Exeits.ExecuteReader();        while (rdr.Read())        {            Response.Write("<script language='JavaScript'>");            Response.Write("alert('對不起,該產品編號已經存在!')");            Response.Write("</script>");            this.txtCategoryId.Text = "";            this.txtDescription.Text = "";            this.txtName.Text = "";            this.txtPrice.Text = "";            this.txtProductId.Text = "";            return;        }        rdr.Close();        string sql_add = "insert into Product(ProductId,CategoryId,Name,Description,Price)values('" + ProductId + "','" + CategoryId + "','" + Name + "','" + Description + "','" + Price + "')";        SqlCommand cmd_add = new SqlCommand(sql_add, myconn);//SqlCommand:表示要對SQL Server資料庫執行的一個Transact-SQL語句或預存程序        cmd_add.ExecuteNonQuery();//對串連執行Transact-SQL語句並返回受影響的行數。對於 UPDATE、INSERT 和 DELETE 語句,傳回值為該命令所影響的行數。對於所有其他類型的語句,傳回值為 -1。如果發生復原,傳回值也為 -1。        myconn.Dispose();        myconn.Close();    }[/CODE[COLOR=Red]資料顯示篇[/COLOR][CODE]protected void Page_Load(object sender, EventArgs e)    {        if (!IsPostBack)        {            string id = Request.Params["id"];            if (id == null || id.Trim() == "")            {                Response.Redirect("default.aspx");                Response.End();            }            else            {                string sql_show = "select * from Product Where ProductId=" + id;                SqlCommand cmd_show = new SqlCommand(sql_show, conn);                conn.Open();                SqlDataReader rd_show = cmd_show.ExecuteReader();//使用SqlDataReader對象讀取並返回一個記錄集                shows.DataSource = rd_show;//指向資料來源                shows.DataBind();//綁定資料                rd_show.Close();//關閉SqlDataReader             }         }    }

資料修改篇

  protected void btnAdd_Click(object sender, EventArgs e)    {        string ProductId = this.lblProductId.Text;        string CategoryId = this.txtCategoryId.Text;        string Name = this.txtName.Text;        string Description = this.txtDescription.Text;        decimal Price = decimal.Parse(this.txtPrice.Text);        string sql_edit = "update Product set CategoryId='" + CategoryId + "',Name='" + Name + "',Description='" + Description + "',Price='" + Price + "' where ProductId =" + ProductId;        SqlCommand cmd_edit = new SqlCommand(sql_edit, conn);        conn.Open();        cmd_edit.ExecuteNonQuery();        conn.Close();        Response.Write("<script language=javascript>window.alert('儲存成功!')</script>");        Response.Redirect("show.aspx?id=" + ProductId);    }

資料刪除篇

protected void Page_Load(object sender, EventArgs e)    {        if (!Page.IsPostBack)        {            string ProductId = Request.Params["id"];            string sql_del = "delete from Product where ProductId=" + ProductId;            SqlCommand cmd_del = new SqlCommand(sql_del, conn);            conn.Open();            cmd_del.ExecuteNonQuery();            conn.Close();            Response.Redirect("default.aspx");        }    }
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.