• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    八天學會ASP.net(5-8)

    發布: 2008-4-07 09:52 | 作者: 不詳 | 來源: bc-cn.net | 查看: 16次 | 進入軟件測試論壇討論

    領測軟件測試網

     

    第六天

     學習目的:學會添加刪除修改記錄,初步掌握DATAGRID的使用

      一、學會添加刪除修改記錄

      以前我們在ASP中不管是添加還是刪除記錄或者用SQL語句加上EXECUTE()或者就是直接用RECORDSET的NEW、DELETE、UPDATE等方法來添加刪除修改記錄。在ASP.NET里面我們采用SQL語句加上COMMAND對象來執行SQL語句的方法來添加刪除修改記錄。這比上次說的讀取記錄還簡單。實際上只有一點區別,把ExecuteReader()修改為ExecuteNonQuery()即可,因為我們不需要返回值啊。

    string strConnection="Provider=Microsoft.Jet.OleDb.4.0;Data Source=";
    strConnection+=Server.MapPath(strDb);
    OleDbConnection objConnection=new OleDbConnection(strConnection);
    OleDbCommand objCommand = new OleDbCommand("這里是SQL語句" , objConnection);
    objConnection.Open();
    OleDbDataReader objDataReader=objCommand.ExecuteNonQuery();

    --------------------------------------------------------------------------------

    dim objConnection as OleDbConnection
    dim objCommand as OleDbCommand
    objConnection=new OleDbConnection(Provider=Microsoft.Jet.OleDb.4.0;Data Source="+Server.MapPath(strDb))
    objCommand=new OleDbCommand("這里是SQL語句" , objConnection)
    objConnection.Open()
    objDataReader=objCommand.ExecuteNoQuery()

      下面再舉例子說明一下SQL語句(ACCESS):

      添加記錄: insert into 表名 (字段1,字段2) values (字符串1,字符串2) where 條件
      刪除記錄: delete from 表名 where 條件
      修改記錄: update 表名 set 字段1=××,字段2=×× where 條件

      需要特別注意,如果是Sql Server刪除記錄是delete 表名,不需要再加from了。

      二、初步掌握DATAGRID的使用

      以前在ASP中,我們顯示大批量數據經常使用循環讀取記錄集的方式,在表格中插入代碼來顯示,循環的是<tr>,如果是分頁還需要自己制作,如果排序更加復雜,在ASP.NET中就好了,一切工作都可以讓DATAGRID來做。

      首先看一下DATAGRID的樣式方面的屬性:

    BackImageUrl="" 背景圖片
    CellSpacing="" 單元格間距
    CellPadding="" 單元格填充
    cssClass="" 使用的CSS樣式

      DATAGRID可以自動用表中的字段名放在顯示的記錄的頭部來表示各個單元格所代表的意義,用ShowHeader="true/false"來控制是不是顯示,在大多數情況下我們是不需要這個功能的,因為我們數據庫中的字段名大多是英文的,而我們想在頁面輸出的大多是中文名字。

      下面看一下顯示數據庫內所有記錄,就幾行代碼:

    <script runat="server" language="c#">
    void Page_Load()
    {
    string strConnection="Provider=Microsoft.Jet.OleDb.4.0;Data Source=";
    strConnection+=Server.MapPath("guestbook.mdb");
    OleDbConnection objConnection=new OleDbConnection(strConnection);
    OleDbCommand objCommand1 = new OleDbCommand("select * from guestbook",objConnection);
    objConnection.Open();
    dgrdMain.DataSource=objCommand1.ExecuteReader();//dgrdMain就是下面的DATAGRID的ID
    dgrdMain.DataBind();
    objConnection.Close();
    }
    </script>
    <html>
    <body>
    <asp:DataGrid
    id="dgrdMain"
    cellpadding="1"
    showheader="true"
    borderwidth="0"
    runat="server"
    />
    </body>
    </html>

      至于VB的版本,這次大家自己來試試吧:)

      假設數據庫是三個字段:id,aa,bb 。顯示的樣子就如下:

     
     id  aa  bb
     1  werwe  rewrwe
     2  werwe  rewrwe

      我們一定覺得這種顯示不滿意,我們有兩種顯示的方式(需要包括在<columns></columns>中間):

     。、默認的列,我們可以選擇不輸出所有的字段還可以安排順序:
    <asp:BoundColumn DataField="想要顯示的字段名">

      比如說我們想按照bb,aa來輸出這個表,我們這么寫

    <asp:DataGrid
    id="dgrdMain"
    cellpadding="1"
    showheader="true"
    autogeneratecolumns="false"
    borderwidth="0"
    runat="server">
    <columns>
    <asp:boundcolumn datafield="bb"/>
    <asp:boundcolumn datafield="bb"/>
    </columns>
    </asp:datagrid>

      注意使用了autogeneratecolumns="false"以后DATAGRID就不會自動輸出所有字段了。

     。、以模板列,我們可以定制每一個單元格的樣式:

    <asp:TemplateColumn>
    <itemTemplate>

      中間是一個表格,想怎么樣就怎么樣。
    </itemTemplate>
    </asp:DataGrid>

      或許你們要說怎么在表格中輸出代碼那,可以使用<%# DataBinder.Eval(Container.DataItem,"字段名").ToString()%>。

      下面看一個例子,我們所要做的就是把aa,bb兩個字段放在一個單元格內顯示,就好像下面一樣:

     
     1  werwe
     rewrwe
     2  werwe
     rewrwe

    我們這樣寫代碼:
    <asp:DataGrid
    id="dgrdMain"
    cellpadding="1"
    showheader="false"
    autogeneratecolumns="false"
    borderwidth="0"
    runat="server">
    <columns>
    <asp:boundcolumn datafield="ii"/> 首先使用默認的顯示方式顯示ID
    <asp:TemplateColumn> 再使用模板來顯示后面一列(由AA,BB并列組成)
    <itemTemplate>
    <table border="0" cellspacing="0" cellpadding="0" width="100%">
    <tr>
    <td><%# Container.DataItem("aa")%></td>
    </tr>
    <tr>
    <td><%# Container.DataItem("bb")%></td>
    </tr>
    </table>
    </itemTemplate>
    </asp:DataGrid>
    </columns>
    </asp:datagrid> 

      今天就說到這里,明天我們來看一下DATAGRID的分頁顯示等功能。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    42/4<1234>

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>