资深而专注的洛阳网站建设专家域名空间多媒体设计中心博易网软件开发Jsp空间   郑州北京洛阳上海深圳广州Englishwap网站
ASP.Net网络数据库:修改数据库
作者: 出处:
加入时间:2008-5-26 8:41:22 点击数:714次         自动滚屏(右键暂停)

1.使用数据库MyFirstAccessDB
    本实例使用的数据库名称为MyFirstAccessDB,版本为Microsoft Access 2003中文版。该数据库已经在1.4.2节中创建。 中国网管论坛bbs.bitsCN.com

    2.设计页面UpdateData.aspx 网管网www_bitscn_com

    在应用程序Example_1_1中添加一个新的Web页面,命名为UpdateData.aspx。然后在页面中添加两个TextBox控件和一个Button按钮控件,它们的名称分别为MyID、MyName和UpdataDataBtn。 网管联盟bitsCN@com

    控件MyID和控件MyName分别用来输入字段主键ID和字段名称;控件UpdataDataBtn实现修改数据库中数据的功能。页面UpdateData.aspx的设计界面如图1-10所示。 网管bitscn_com


图1-9  页面ShowData.aspx的初始界面

网管u家u.bitsCN.com

 

图1-10  页面UpdateData.aspx的设计界面 中国网管论坛bbs.bitsCN.com

    页面UpdateData.aspx的HTML设计代码如下:
    <%@ Page language="c#" Codebehind="UpdateData.aspx.cs"
    AutoEventWireup="false" Inherits="Example_1_1.UpdateData" %>
    <HTML><HEAD><title>Example_1_1:修改数据库中的数据</title></HEAD>
    <asp:TextBox id="MyID" runat="server"></asp:TextBox>
    <asp:TextBox id="MyName" runat="server"></asp:TextBox>
    <asp:Button id="UpdateDataBtn" runat="server"
    Text="修改数据"></asp:Button>
    </HTML>

网管网www_bitscn_com

 

    把页面UpdateData.aspx访问数据库的连接字符串存放在应用程序的配置文件web.config中。程序代码如下:
    <appSettings>
    <add key="ACCESSCONNECTIONSTRING"
    value="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=">
    </add>
    </appSettings>

    由于页面ShowData.aspx获取连接字符串时需要使用类ConfigurationSettings。它被包含在名字空间System.Configuration中,因此需要引入该名字空间。页面获取连接字符串的程序代码如下:
    using System.Configuration;                  //引入名字空间
    //获取连接字符串
    private readonly string ACCESSCONNECTIONSTRING
    =ConfigurationSettings.AppSettings[
    "ACCESSCONNECTIONSTRING"].ToString(); 网管网www_bitscn_com

    4.设计页面UpdateData.aspx的事件和函数

    页面UpdateData.aspx调用函数Page_Load(Object sender,System.EventArgs e)初始化,该函数调用函数ShowDBData()显示数据库MyFirstAccessDB的表MyDataTable中的数据,显示的格式为表中的字段排列顺序,同时还显示连接信息。函数Page_Load(object sender, System.EventArgs e)和函数ShowDBData()的程序代码如下:
    private void Page_Load(object sender, System.EventArgs e)
    {
        if(!Page.IsPostBack)
        {
            ShowDBData();                       //显示数据库MyFirstAccessDB中的数据
        }
    }

网管u家u.bitsCN.com


    private void ShowDBData()
    {        //设在访问数据库的连接字符串
        string accessString = ACCESSCONNECTIONSTRING
        + Server.MapPath("MyFirstAccessDB.mdb");
        string cmdText = "SELECT * FROM MyDataTable";   //创建获取数据的SQL语句
        //创建数据库的连接和Command
        OleDbConnection accessConn = new OleDbConnection(accessString);
        OleDbCommand accessComm = new OleDbCommand(cmdText,accessConn);
        //定义数据显示的格式
        string dataString = "<br>MyID  MyName  MyType  My Length<br>";  网管u家u.bitsCN.com

 try
        {
            accessConn.Open();                    //打开OLEDB数据库的连接
            Response.Write("连接MyFirstAccessDB数据源成功!!!");
            //显示数据库中的信息
            OleDbDataReader reca = accessComm.ExecuteReader();
            while(reca.Read())
            {   //获取相应数据
                dataString += reca["MyID"].ToString() +" "  网管下载dl.bitscn.com
                + reca["MyName"].ToString()
                +" " + reca["MyType"].ToString() +" "
                + reca["MyLength"].ToString();
                dataString += "<br>";
            }
            reca.Close();
            Response.Write(dataString);                          //显示数据库中的内容
            accessConn.Close();                            //关闭OLEDB数据库的连接  中国网管联盟bitsCN.com
        }
        catch(Exception ex)
        {
            Response.Write(ex.Message);                      //抛出数据库连接异常
        }
    }

网管联盟bitsCN@com

【转自www.bitsCN.com】

单击页面UpdateData.aspx中【修改数据】按钮控件,触发事件 UpdateDataBtn_Click(object sender, System.EventArgs e)。该事件实现修改数据库MyFirstAccessDB中数据的功能,它调用函数UpdataDBData(String myID,String myName)。首先从页面获取MyID和MyName的值,然后再使用SQL更新语句更新表中相应的记录,最后调用函数ShowDBData()显示表的数据。事件UpdateDataBtn_Click(object sender, System.EventArgs e)和函数UpdataDBData(String myID,String myName)的程序代码如下:
    private void UpdateDataBtn_Click(object sender, System.EventArgs e)
    {
        if(MyID.Text.Trim().Length > 0 && MyName.Text.Trim().Length > 0)
        { 
            UpdataDBData(MyID.Text.Trim(),MyName.Text.Trim());              //修改表中的记录 
网管联盟bitsCN_com


            ShowDBData();                    //显示修改后的数据
        }
    }
    private void UpdataDBData(String myID,String myName)
    {        //设置访问数据库的连接
        string accessString = ACCESSCONNECTIONSTRING
        + Server.MapPath("MyFirstAccessDB.mdb");
        //设置更新数据库的SQL语句
        string cmdText = "UPDATE MyDataTable SET MyName='" + myName
        + "' WHERE MyID=" + myID;
        //创建访问数据库的连接和Command  网管bitscn_com
        OleDbConnection accessConn = new OleDbConnection(accessString);
        OleDbCommand accessComm = new OleDbCommand(cmdText,accessConn);  网管联盟bitsCN@com

 try
        {
            accessConn.Open();               //打开OLEDB数据库的连接
            accessComm.ExecuteNonQuery();                        //执行更新数据操作
            accessConn.Close();                     //关闭OLEDB数据库的连接
        }
        catch(Exception ex)
        {  

网管论坛bbs_bitsCN_com

            Response.Write(ex.Message);                 //抛出数据库连接异常
        }
    } 网管联盟bitsCN_com

    经过前面的步骤,一个简单的网络数据库程序就完成了。下面运行一下。

网管网www_bitscn_com


    (1)设置页面UpdateData.aspx为应用程序的起始页面。按F5键运行,出现如图1-11所示的初始界面。

网管网www_bitscn_com

 

图1-11  页面UpdateData.aspx的初始界面 中国网管论坛bbs.bitsCN.com

    (2)在MyID和MyName文本框中分别输入“1”和“Name100”,然后单击【修改数据】按钮,页面UpdateData.aspx如图1-12所示。

网管联盟bitsCN_com


图1-12  页面UpdateData.aspx显示修改表后的数据 网管联盟bitsCN@com

 

 


  • 上一篇: ASP.NET获取IP与MAC地址的方法
  • 下一篇: 用ASP程序实现网站在线人数统计
  •  
    © 2008   正达网讯  All Rights Reserved.