asp.net讀取資料庫

來源:互聯網
上載者:User

有的網友說,不會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××就這麼簡單
你甚至可以用替換所有來解決

有的網友說,不會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××就這麼簡單
你甚至可以用替換所有來解決.

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.