十天(tiān)學會ASP.net之第六天
學習目的:學會讀取數據庫(kù)
有的網友說,不會C#,在ASP.NET裏麵還是選擇(zé)VB.NET,這個我不反對,但是我覺得既然是學習新的(de)東西,就不要在意有多少是新的(de)。實際上C#就一般的操作來說(shuō),隻是區分大小(xiǎo)寫和多了一個分號這(zhè)兩點與VB.NET不同其他都差不多啊。在ASP裏麵我們讀取數據就直接用RECORDSET,然後在HTML代碼裏麵穿插<%= %>就可以顯示了,但是ASP.NET講究的(de)是代碼分離,如果還是這樣顯示數據就不能代碼分離了。所以我們有(yǒu)兩種方(fāng)法:如果是讀取一(yī)條記錄的數據或者不多的數據,我們用DATAREADER采集數據,然後賦值給LABEL控件(jiàn)的Text屬性即可;如(rú)果是讀取大量數據我們就采用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("這裏(lǐ)是SQL語句(jù)" , 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"]);
}
大家可以看到我們首先是連接(jiē)數(shù)據庫然後打開,對於select的命令,我們(men)申明一個OleDbCommand來執行之,然後再申明一個OleDbDataReader,來讀取數據,用的是ExecuteReader(),objDataReader.Read()就開始讀取(qǔ)了,在輸出的時候我們要注意(yì)Text屬性接受的隻能是字符串(chuàn),所以我們要把讀出(chū)的(de)數據都(dōu)轉化為字符串(chuàn)才(cái)行。
轉換變量類型函數:
轉(zhuǎn)換為字符串:Convert.ToString()
轉換為數字(zì):Convert.ToInt64(),Convert.ToInt32(),Convert.ToInt16() 是按照數(shù)字位(wèi)數由長到(dào)短
轉換為日期(qī):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("這裏(lǐ)是SQL語(yǔ)句" , 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
其實大家比較一(yī)下C#和(hé)VB的(de)語法,會發覺用(yòng)C#似乎更加簡單,教程裏(lǐ)麵我側重(chóng)C#,對於VB的代碼(mǎ)我就不解釋了。
下麵說一下如果代碼是讀取SQL數據庫,我們這樣來轉變
1、把代碼開始的
<%@Import Namespace="System.Data"%>
<%@Import Namespace="System.Data.OleDb"%>
修改為
<%@Import Namespace="System.Data"%>
<%@Import Namespace="System.Data.SqlClient"%>
2、把代碼裏麵所有申明的對象OleDb××變為Sql××就這麽簡單
你甚至可以用(yòng)替換所有來解決,所以今後我講不再列出Sql Server的(de)代碼了。
今天就說到這裏,明天(tiān)開始說數據的(de)添加、刪除、修改(gǎi)。
關鍵詞:ASP.net
閱讀本文後您有什麽感想? 已有 人給出評價!
- 0
- 0
- 0
- 0
- 0
- 0