恬然自得.活在當下: [實習]12/02 ASP.NET 使用C#上機課程

2010年12月24日 星期五

[實習]12/02 ASP.NET 使用C#上機課程

真不好意思呀!似乎晚了點才弄這段文章,這幾天會慢慢補齊@@”

實習一:如何在Access DBMS中,下達SQL命令
1.      建立/查詢設計/選取資料表/關閉
2.      在查詢視窗中按右鈕/SQL檢視
3.      下達SQL命令
4.      按下!執行

老師當天有提供一個mydb.mdb的檔案,裡面大概就是一些人名跟成績資訊,如果有需要可以跟我拿,或是自己建立一份也可以啦。



接者就打開mydb.mdb吧。會看見Access被打開了。


點選建立標籤之後,在點選查詢設計。


之後會看到如下的畫面,將這個訊息框關閉吧。


對著灰藍色的視窗內,點滑鼠右鍵,點選SQL檢視,就可以編輯SQL命令嘍!


請大家輸入這一小段SQL命令:SELECT * from grade where eng > 90;
這段命令是指,到grade資料表中,把eng這個欄位大於90的,通通找出來。
接著就按下執行,來看看結果吧。


果真是eng > 90的欄位都被找出來了唷!!


實習二:寫一ASP.NET C#程式,讀取”mydb.mdb”資料庫中的grade資料表,經由Gradview Web控制項把表格內容呈現於browser中。

請自己建立一個aspx檔吧,底下是程式碼。

在程式的最上面,別忘了Import命名空間喔,這兩個是這次所需要的。
<%@ Import Namespace="System.Data" %>
<%@ Import NameSpace="System.Data.OleDb" %>

之後在page_load內撰寫程式碼,直接打開網頁就顯示資料庫吧。
OleDbConnection myConnection;
   OleDbCommand myCommand;

   myConnection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("mydb.mdb"));
   myConnection.Open();
   myCommand = new OleDbCommand("Select * from Grade", myConnection);
   OleDbDataReader myDataReader = myCommand.ExecuteReader();
   Grid1.DataSource = myDataReader;
   Grid1.DataBind();
   myConnection.Close();

使用OleDbConnection來連結”mydb.mdb”資料庫
使用OleDbCommand來下達SQL命令
使用OleDbDataReader來讀取資料表
Server.MapPath("mydb.mdb")會自動去找在根目錄中叫做”mydb.mdb”的檔案,而根據網路上查詢到的確切講法和用法,
Server.MapPath(string) :傳回在 Web 伺服器上對應至指定虛擬路徑的實體檔案路徑。

1Server.MapPath("/") 應用程序根目錄所在的位置 
   
C:\Inetpub\wwwroot\

2
Server.MapPath("./") 表示所在頁面的目錄
 注:等於Server.MapPath("") 返回Server.MapPath("") 所在頁面的物理文件路徑

3
Server.MapPath("../")表示上一層目錄

4
Server.MapPath("~/") 表示當前應用程序的目錄,如果是根目錄,就是根目錄,如果是虚擬目錄,就是虚擬目錄所在的位置 
    
C:\Inetpub\wwwroot\Example\

myCommand.ExecuteReader就是用來讀取資料庫的唷。另外大家還可以參考以下這個網址,內有dataReader的另一種寫法,也是簡單易懂:

使用GradView把資料內容顯示出來
Grid1.DataSource = myDataReader;
Grid1.DataBind();

最後myConnection.Close()就是關閉資料庫連線嘍。


大家可以看到實際測試的結果。


如果覺得表格不好看的話,可以在HTML對表格進行美化,貼上程式碼供大家參考。

<html>
<body bgcolor=#ffffff>

<center>
<form id="Form1" runat=server>
 <asp:GridView id="Grid1" runat="server"
  Width="400" BorderColor="Black"
  CellPadding="2" CellSpacing="1"
  HeaderStyle-BackColor="#d1a4ff" HeaderStyle-ForeColor="#ffffb0"
  BackColor="#ffd2d2" ForeColor="#007bf7" >
 
asp:GridView>
 form>
 center>
body>
html>


美化成果如下:

沒有留言:

張貼留言

歡迎提供良性建議^_^