• <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-04-07來源:作者:點擊數: 標簽:
    第五天 學習目的:學會連接兩種 數據庫 ,學會讀取數據庫 一、學會連接兩種數據庫 對于ASP來說,我們常用的數據庫無非是A CC ESS和 SQL SERVER,對于ASP.NET也是,不過ASP.NET對于SQL SERVER有專門的連接組件而不推薦用OLE DB。 首先看一下ACCESS的連接數據
     第五天

     學習目的:學會連接兩種數據庫,學會讀取數據庫

      一、學會連接兩種數據庫

      對于ASP來說,我們常用的數據庫無非是ACCESS和SQL SERVER,對于ASP.NET也是,不過ASP.NET對于SQL SERVER有專門的連接組件而不推薦用OLE DB。

      首先看一下ACCESS的連接數據庫并打開;

    string strConnection="Provider=Microsoft.Jet.OleDb.4.0;Data Source=";
    strConnection+=Server.MapPath("*.mdb"); //*就是數據庫的名字
    OleDbConnection objConnection=new OleDbConnection(strConnection);
    objConnection.Open();

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

    dim objConnection as OleDbConnection
    objConnection=new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source="+Server.MapPath("*.mdb"))
    objConnection.Open()

      下面再看一下SQL SERVER的連接數據庫并打開;

    string strConnection="server=數據庫連接;uid=用戶名;pwd=密碼;database=數據庫名字";
    SqlConnediob objConnection=new SqlCOnnection(strConnection);
    objConnection.Open();

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

    dim objConnection as SqlConnectiom
    objConnection=new SqlConnection("server=數據庫連接;uid=用戶名;pwd=密碼;database=數據庫名字")
    objConnection.Open()

      實際上,在大多數地方SQL SERVER和ACCESS的區別除了連接語句,其他定義語句也就是SQL和OLEDB的區別。

      另外,如果是ACCESS數據庫的話在ASPX文件的開頭需要包括下列語句:

    <%@Import Namespace="System.Data"%>
    <%@Import Namespace="System.Data.OleDb"%>

      如果是SQL SERVER則需要包括以下語句:
    <%@Import Namespace="System.Data"%>
    <%@Import Namespace="System.Data.SqlClient"%>

      二、學會讀取數據庫

      有的網友說,不會C#,在ASP.NET里面還是選擇VB.NET,這個我不反對,但是我覺得既然是學習新的東西,就不要在意有多少是新的。實際上C#就一般的操作來說,只是區分大小寫和多了一個分號這兩點與VB.NET不同其他都差不多啊。在ASP里面我們讀取數據就直接用RECORDSET,然后在HTML代碼里面穿插<%= %>就可以顯示了,但是ASP.NET講究的是代碼分離,如果還是這樣顯示數據就不能代碼分離了。所以我們有兩種方法:如果是讀取一條記錄的數據或者不多的數據,我們用DATAREADER采集數據,然后賦值給LABEL控件的Text屬性即可;如果是讀取大量數據我們就采用DATAGRID。

      今天我們就來說一下DATAREADER:

    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.ExecuteReader();
    if(objDataReader.Read())
    {
    oicq.Text=Convert.ToString(objDataReader["useroicq"]);
    homesite.Text=Convert.ToString(objDataReader["usersite"]);
    face.SelectedItem.Text=Convert.ToString(objDataReader["userface"]);
    }

      大家可以看到我們首先是連接數據庫然后打開,對于select的命令,我們申明一個OleDbCommand來執行之,然后再申明一個OleDbDataReader,來讀取數據,用的是ExecuteReader(),objDataReader.Read()就開始讀取了,在輸出的時候我們要注意Text屬性接受的只能是字符串,所以我們要把讀出的數據都轉化為字符串才行。

      轉換變量類型函數:

      轉換為字符串:Convert.ToString()
      轉換為數字:Convert.ToInt64(),Convert.ToInt32(),Convert.ToInt16() 是按照數字位數由長到短
      轉換為日期:Convert.ToDateTime()

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

    dim objConnection as OleDbConnection
    dim objCommand as OleDbCommand
    dim objDataReader as OleDbDataReader
    objConnection=new OleDbConnection(Provider=Microsoft.Jet.OleDb.4.0;Data Source="+Server.MapPath(strDb))
    objCommand=new OleDbCommand("這里是SQL語句" , objConnection)
    objConnection.Open()
    objDataReader=objCommand.ExecuteReader()
    if objDataReader.Read()
    oicq.Text=Convert.ToString(objDataReader["useroicq"])
    homesite.Text=Convert.ToString(objDataReader["usersite"])
    face.SelectedItem.Text=Convert.ToString(objDataReader["userface"])
    end if

      其實大家比較一下C#和VB的語法,會發覺用C#似乎更加簡單,教程里面我側重C#,對于VB的代碼我就不解釋了。

      下面說一下如果代碼是讀取SQL數據庫,我們這樣來轉變:

      1、把代碼開始的
    <%@Import Namespace="System.Data"%>
    <%@Import Namespace="System.Data.OleDb"%>
    修改為
    <%@Import Namespace="System.Data"%>
    <%@Import Namespace="System.Data.SqlClient"%>

      2、把代碼里面所有申明的對象OleDb變為Sql就這么簡單。你甚至可以用替換所有來解決,所以今后我講不再列出Sql Server的代碼了。

      今天就說到這里,明天開始說數據的添加、刪除、修改。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品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>