|
作者: CRYSTAL編譯
在ASP時代,如果我們要建立一個數據庫驅動的web站點,那么你可以選擇環很多錢的微軟SQL SERVER數據庫或者選擇要花很多時間來尋找達到性能和穩定性統一的ACCESS數據庫,但在.NET時代你有另一種選擇,那就是:MySQL數據庫
什么是MySQL數據庫?
MySQL數據庫是一種開放源代碼的數據庫,通過獲得授權來保持源代碼的官方支持,同時可以自由修改源代碼,目前許多公司和組織都采用了這種數據庫。對此詳細信息您可以訪問MySQL的官方站點。
第一步 下載和安裝
與大多數軟件一樣,首先是得到并安裝mysql數據庫軟件,獲得Mysql數據庫的方很簡單,在http://dev.mysql.com/downloads/index.html . 上可以自由下載,本文采用的是Mysql4.1,當然讀者也可以下在其他版本,不過我要推薦給讀者的是最好下載預編譯的二進制的文件。我的操作平臺是Windwos XP,所以我選擇的是包括安裝文件的Windows版,這個版本大約35M,所以下載的時間不是很長,除非你的網絡有問題。
安裝非常簡單,按照安裝步驟不會導致任何問題,如下圖:
MySQL Server安裝
MySQL Server安裝
MySQL Server安裝
MySQL Server安裝
如圖所示,在安裝完成的最后一步,系統會問你是否要配置MySQL服務器,如果選擇現在配置MySQL服務器,那么系統將自動運行MySQL實例配置向導,于是你將進入下一步。
第二步 配置
MySQL服務器實例配置向導使配置服務器變得非常簡單,按照配置向導一步一步的走,絕大多數時候都選擇缺省配置。
![]() MySQL服務器配置向導 ![]() MySQL服務器配置向導 |
如上圖,讀者可以自行選擇是安裝在專用的數據庫服務器上或是共享的服務器,由于我使用的筆記本電腦,所以我選擇是最簡單的"Developer Machine",這個設置不能提供同樣的性能,而且也不能使用很多系統資源
![]() MySQL服務器配置向導―選擇數據庫的用途 ![]() MySQL服務器配置向導―指定TCP/IP和端口號 |
必須確保響應TCP/IP網絡協議,以保證Web頁載需要的時候Web服務器能連接數據庫;如果你的數據庫和web服務器安裝在同一臺服務器上,那么可以禁用這個選項以防止來自網絡的訪問。
MySQL服務器配置向導―設置默認字符串類型
![]() MySQL服務器配置向導 ![]() MySQL服務器配置向導―安裝服務 ![]() MySQL服務器配置向導―設置SQL連接密碼 ![]() MySQL服務器配置向導―即將完成配置 |
第三步 MySQL Administrator
也許你認為可以不需要這個東西,但我還是要建議你下載并使用MySQL Administrator,它提供圖形界面以幫助你管理MySQL數據庫,Windows用戶可以通過命令提示行運行MySQL Administrator,在余下時間里我假定你已經安裝了MySQL Administrator,并且將使用相關圖例。
![]() MySQL Administrator主界面 |
第四步 創建數據庫
要創建數據庫,我們必須首先連接服務器。運行MySQL Administrator并登陸服務器。
![]() 運行MySQL Administrator并登陸服務器 |
選擇MySQL Administrator左側底部的"Catalogs",然后在管理器的右側會出現目前服務器上已經有的數據庫目錄,右擊Schema窗口的"mysql",選擇"Create New Schema"。
![]() 創建一個新的數據庫 |
系統將提示你輸入數據庫的名稱,這里我們使用"mydatabase",在本文以后也將使用這個名稱。
![]() 輸入數據庫名稱 |
一旦創建后,新數據庫就將與服務器中的其他數據庫一起出現在Schema窗口,選擇它后,在右側窗口將出現它的詳細資料。
完成新數據庫的創建:
![]() 新的數據庫創建完成了 |
現在這里面還沒有更多的東西,因為目前數據庫還是空的。下面我們就為數據庫添加點東西。
第五步 創建表
創建表很簡單,只需要點擊"Create Table"按鈕,于是將出現下面的對話框:
![]() 創建表 |
如圖所示,我們已經給表取名為"mytable",有四個域,其中id域為自動增量的主鍵、一個整數域、一個文本域和一個時間/日期域。
在完成這些后,點擊"Apply Changes"按鈕,將出現如下圖的窗口,窗口中的是創建表的SQL語句,同時詢問是否執行,當然點擊"Execute"。
![]() 確認并執行表中的SQL語句 |
到目前為止,我們已經創建了一個包含名為"mytable"的表的名為"mydatabase"的數據庫,下面我們要做的就是為數據庫添加點數據。
第六步 添加數據
在真實情況中,添加數據是通過應用程序來實現的,但現在僅僅是要添加幾個樣本數據,所以我將在MySQL客戶端命令中使用SQL語句的insert語句來實現,如果現在你還在MySQL Administrator中,那么可以通過菜單"tools"來訪問命令行(Tools -> MySQL Command Line Client),否則可以通過開始菜單的MySQL組來訪問。
![]() 通過命令行語句來實現添加數據 |
圖中的第一行是告訴服務器我將使用那個數據庫,第二和第三僅僅是簡單的向數據庫插入數據。
現在數據表中有兩個樣本數據,到目前為止,我們的數據庫服務器已經建立并運行了,里面有一個數據庫,一個數據表,一些數據。
第七步 創建新的MySQL用戶賬號
要添加用戶賬號需要再一次運行并登陸MySQL Administrator,在MySQL Administrator窗口的左邊選擇"User Administration",同時右邊將顯示服務器現行賬號的信息(這里通常是所謂的root),右擊下面小窗口里的賬號,選擇"Add new User"。
![]() 再次運行MySQL Administrator,并添加一個用戶帳號 |
接下來系統將提示你輸入新用戶的詳細信息,我給新用戶取名為"15secs",口令設置為"password".
![]() 設置用戶名、密碼等常規選項 |
完成這些后,點擊"Apply Changes"按鈕以保存輸入。
第八步 給用戶賬號授權
缺省狀況下的新用戶幾乎什么都做不了,要允許新用戶連接MySQL數據庫必須在"Schema Privileges"中進行授權,這一切將在MySQL Administrator.中的"Schema Privileges"中完成。
![]() 為新開帳號設置權限 |
注意上圖還沒有為用戶進行任何授權,由于后面的代碼需要查詢數據庫,故需要授予用戶"select"權限,然后點擊"Apply Changes"按鈕保存。
進行授權:
![]() 進行授權 |
也許應用程序需要更多的權限,如:"INSERT", "UPDATE", 和 "DELETE"等等,你可以用同樣的方法授予給用戶,但要注意的是,權限越多安全越小,你必須對每個用戶都實行控制。
第九步 ASP.NET頁連接數據庫服務器
在.NET中連接MySQL數據庫有兩種方法:MySQL Connector/ODBC 和 MySQL Connector/NET,ODBC連接器是符合ODBC標準的交互平臺,是.NET訪問MySQL數據庫的最好的選擇。
下載MySQL Connector/NET,然后直接安裝,如下圖:
MySQL Connector/NET安裝圖
MySQL Connector/NET安裝圖
MySQL Connector/NET安裝圖
MySQL Connector/NET安裝圖
注意:我選擇了register Connector/NET in the Global Assembly Cache,但我發現它已經被安裝了,但我不能使用import語句,找不到Connector/NET的名稱空間,直到將MySql.Data.dll文件拷貝到/bin目錄下后才解決這個問題,系統報出的錯誤是:
我相信這個問題依然存在,只能暫時用手工將文件從安裝位置拷貝到相應的目錄中,如:C:/Program Files/MySQL/MySQL Connector NET 1.0.4/bin/.NET 1.1/,拷貝到C:/INETpub/wwwroot/bin/,就可以解決這個問題。
第十步 示例程序
至此我們的數據庫終于完成,MySQL Connector/NET也安裝成功,我們該做點其他什么事情了。下面我將提供一段簡單的腳本,在這段腳本中,我們將連接和查詢數據庫中的數據,輸入數據不是腳本的要點。 MySQL.ASPx
<%@ Page Language="VB" debug="true" %> <%@ Import Namespace = "System.Data" %> <%@ Import Namespace = "MySql.Data.MySqlClient" %> <script language="VB" runat="server"> Sub Page_Load(sender As Object, e As EventArgs) Dim myConnection As MySqlConnection Dim myDataAdapter As MySqlDataAdapter Dim myDataSet As DataSet Dim strSQL As String Dim iRecordCount As Integer myConnection = New MySqlConnection("server=localhost; user id=15secs; password=password; database=mydatabase; pooling=false;") strSQL = "SELECT * FROM mytable;" myDataAdapter = New MySqlDataAdapter(strSQL, myConnection) myDataSet = New Dataset() myDataAdapter.Fill(myDataSet, "mytable") MySQLDataGrid.DataSource = myDataSet MySQLDataGrid.DataBind() End Sub </script> <html> ?。糷ead> <title>Simple MySQL Database Query</title> ?。?head> <body> ?。糵orm runat="server"> ?。?a href=/itjie/ASPjishu/ target=_blank class=infotextkey>ASP:DataGrid id="MySQLDataGrid" runat="server" /> ?。?form> </body> </html> |
在上面的腳本中黑體字部分將隨你采用的平臺不同而進行修改,如采用SQL Server應用System.Data.SQLClient來替換MySql.Data.MySqlClient,這只是一點,更詳細的本文就不討論了。下圖是腳本運行結果:
![]() 腳本運行結果 |
結論:
我希望本文能對讀者理解數據庫服務器有所幫助,當你打算從access或SQL Server上升級的時候,MySQL是一個不錯的選擇,盡管它是開放源代碼的,而且還有些缺陷,但它與.NET的結合能做許多工作,另外MySQL Administrator使管理數據庫服務器不再是管理員的噩夢。
AspNet技術:ASP.NET與MySQL數據庫簡明圖示入門教程,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。