閱讀709 返回首頁    go 小米 go 小米6


ASP.NET與MySQL數據庫簡明圖示入門教程

在ASP時代,如果我們要建立一個數據庫驅動的web站點,那麼你可以選擇環很多錢的微軟SQLSERVER數據庫或者選擇要花很多時間來尋找達到性能和穩定性統一的ACCESS數據庫,但在.NET時代你有另一種選擇,那就是:MySQL數據庫

什麼是MySQL數據庫?

MySQL數據庫是一種開放源代碼的數據庫,通過獲得授權來保持源代碼的官方支持,同時可以自由修改源代碼,目前許多公司和組織都采用了這種數據庫。對此詳細信息您可以訪問MySQL的官方站點。

第一步下載和安裝

與大多數軟件一樣,首先是得到並安裝mysql數據庫軟件,獲得Mysql數據庫的方很簡單,在
MySQLServer安裝


MySQLServer安裝


MySQLServer安裝


MySQLServer安裝


如圖所示,在安裝完成的最後一步,係統會問你是否要配置MySQL服務器,如果選擇現在配置MySQL服務器,那麼係統將自動運行MySQL實例配置向導,於是你將進入下一步。

第二步配置

MySQL服務器實例配置向導使配置服務器變得非常簡單,按照配置向導一步一步的走,絕大多數時候都選擇缺省配置。


MySQL服務器配置向導


MySQL服務器配置向導


如上圖,讀者可以自行選擇是安裝在專用的數據庫服務器上或是共享的服務器,由於我使用的筆記本電腦,所以我選擇是最簡單的"DeveloperMachine",這個設置不能提供同樣的性能,而且也不能使用很多係統資源


MySQL服務器配置向導—選擇數據庫的用途


MySQL服務器配置向導—指定TCP/IP和端口號


必須確保響應TCP/IP網絡協議,以保證Web頁載需要的時候Web服務器能連接數據庫;如果你的數據庫和web服務器安裝在同一台服務器上,那麼可以禁用這個選項以防止來自網絡的訪問。
MySQL服務器配置向導—設置默認字符串類型


MySQL服務器配置向導


MySQL服務器配置向導—安裝服務


MySQL服務器配置向導—設置SQL連接密碼


MySQL服務器配置向導—即將完成配置

第三步MySQLAdministrator

也許你認為可以不需要這個東西,但我還是要建議你下載並使用MySQLAdministrator,它提供圖形界麵以幫助你管理MySQL數據庫,Windows用戶可以通過命令提示行運行MySQLAdministrator,在餘下時間裏我假定你已經安裝了MySQLAdministrator,並且將使用相關圖例。


MySQLAdministrator主界麵


第四步 創建數據庫

要創建數據庫,我們必須首先連接服務器。運行MySQLAdministrator並登陸服務器。


運行MySQLAdministrator並登陸服務器


選擇MySQLAdministrator左側底部的"Catalogs",然後在管理器的右側會出現目前服務器上已經有的數據庫目錄,右擊Schema窗口的"mysql",選擇"CreateNewSchema"。


創建一個新的數據庫


係統將提示你輸入數據庫的名稱,這裏我們使用"mydatabase",在本文以後也將使用這個名稱。


輸入數據庫名稱


一旦創建後,新數據庫就將與服務器中的其他數據庫一起出現在Schema窗口,選擇它後,在右側窗口將出現它的詳細資料。

完成新數據庫的創建:


新的數據庫創建完成了


現在這裏麵還沒有更多的東西,因為目前數據庫還是空的。下麵我們就為數據庫添加點東西。

第五步 創建表

創建表很簡單,隻需要點擊"CreateTable"按鈕,於是將出現下麵的對話框:


創建表


如圖所示,我們已經給表取名為"mytable",有四個域,其中id域為自動增量的主鍵、一個整數域、一個文本域和一個時間/日期域。

在完成這些後,點擊"ApplyChanges"按鈕,將出現如下圖的窗口,窗口中的是創建表的SQL語句,同時詢問是否執行,當然點擊"Execute"。


確認並執行表中的SQL語句


到目前為止,我們已經創建了一個包含名為"mytable"的表的名為"mydatabase"的數據庫,下麵我們要做的就是為數據庫添加點數據。

第六步 添加數據

在真實情況中,添加數據是通過應用程序來實現的,但現在僅僅是要添加幾個樣本數據,所以我將在MySQL客戶端命令中使用SQL語句的insert語句來實現,如果現在你還在MySQLAdministrator中,那麼可以通過菜單"tools"來訪問命令行(Tools->MySQLCommandLineClient),否則可以通過開始菜單的MySQL組來訪問。


通過命令行語句來實現添加數據


圖中的第一行是告訴服務器我將使用那個數據庫,第二和第三僅僅是簡單的向數據庫插入數據。

現在數據表中有兩個樣本數據,到目前為止,我們的數據庫服務器已經建立並運行了,裏麵有一個數據庫,一個數據表,一些數據。

第七步 創建新的MySQL用戶賬號

要添加用戶賬號需要再一次運行並登陸MySQLAdministrator,在MySQLAdministrator窗口的左邊選擇"UserAdministration",同時右邊將顯示服務器現行賬號的信息(這裏通常是所謂的root),右擊下麵小窗口裏的賬號,選擇"AddnewUser"。


再次運行MySQLAdministrator,並添加一個用戶帳號


接下來係統將提示你輸入新用戶的詳細信息,我給新用戶取名為"15secs",口令設置為"password".


設置用戶名、密碼等常規選項


完成這些後,點擊"ApplyChanges"按鈕以保存輸入。

第八步 給用戶賬號授權

缺省狀況下的新用戶幾乎什麼都做不了,要允許新用戶連接MySQL數據庫必須在"SchemaPrivileges"中進行授權,這一切將在MySQLAdministrator.中的"SchemaPrivileges"中完成。


為新開帳號設置權限


注意上圖還沒有為用戶進行任何授權,由於後麵的代碼需要查詢數據庫,故需要授予用戶"select"權限,然後點擊"ApplyChanges"按鈕保存。

進行授權:


進行授權


也許應用程序需要更多的權限,如:"INSERT","UPDATE",和"DELETE"等等,你可以用同樣的方法授予給用戶,但要注意的是,權限越多安全越小,你必須對每個用戶都實行控製。

第九步ASP.NET頁連接數據庫服務器

在.NET中連接MySQL數據庫有兩種方法:MySQLConnector/ODBC和MySQLConnector/Net,ODBC連接器是符合ODBC標準的交互平台,是.NET訪問MySQL數據庫的最好的選擇。

下載MySQLConnector/Net,然後直接安裝,如下圖:


MySQLConnector/Net安裝圖


MySQLConnector/Net安裝圖


MySQLConnector/Net安裝圖


MySQLConnector/Net安裝圖

注意:我選擇了registerConnector/NETintheGlobalAssemblyCache,但我發現它已經被安裝了,但我不能使用import語句,找不到Connector/NET的名稱空間,直到將MySql.Data.dll文件拷貝到/bin目錄下後才解決這個問題,係統報出的錯誤是:

BC30466:NamespaceortypespecifiedintheImports'MySql.Data.MySqlClient'cannotbefound

我相信這個問題依然存在,隻能暫時用手工將文件從安裝位置拷貝到相應的目錄中,如:C:/ProgramFiles/MySQL/MySQLConnectorNet1.0.4/bin/.NET1.1/,拷貝到C:/Inetpub/wwwroot/bin/,就可以解決這個問題。

第十步示例程序

至此我們的數據庫終於完成,MySQLConnector/Net也安裝成功,我們該做點其他什麼事情了。下麵我將提供一段簡單的腳本,在這段腳本中,我們將連接和查詢數據庫中的數據,輸入數據不是腳本的要點。MySQL.aspx

<%@PageLanguage="VB"debug="true"%>
<%@ImportNamespace="System.Data"%>
<%@ImportNamespace="MySql.Data.MySqlClient"%>
<scriptlanguage="VB"runat="server">

SubPage_Load(senderAsObject,eAsEventArgs)

 DimmyConnectionAsMySqlConnection
 DimmyDataAdapterAsMySqlDataAdapter
 DimmyDataSetAsDataSet

 DimstrSQLAsString
 DimiRecordCountAsInteger

 myConnection=NewMySqlConnection("server=localhost;userid=15secs;password=password;database=mydatabase;pooling=false;")

 strSQL="SELECT*FROMmytable;"

 myDataAdapter=NewMySqlDataAdapter(strSQL,myConnection)
 myDataSet=NewDataset()
 myDataAdapter.Fill(myDataSet,"mytable")

 MySQLDataGrid.DataSource=myDataSet
 MySQLDataGrid.DataBind()

EndSub

</script>

<html>
 <head>
<title>SimpleMySQLDatabaseQuery</title>
 </head>
<body>

 <formrunat="server">
<asp:DataGridrunat="server"/>
 </form>
</body>
</html>


在上麵的腳本中黑體字部分將隨你采用的平台不同而進行修改,如采用SQLServer應用System.Data.SQLClient來替換MySql.Data.MySqlClient,這隻是一點,更詳細的本文就不討論了。下圖是腳本運行結果:


腳本運行結果
結論:

我希望本文能對讀者理解數據庫服務器有所幫助,當你打算從access或SQLServer上升級的時候,MySQL是一個不錯的選擇,盡管它是開放源代碼的,而且還有些缺陷,但它與.NET的結合能做許多工作,另外MySQLAdministrator使管理數據庫服務器不再是管理員的噩夢。

最後更新:2017-04-02 00:06:36

  上一篇:go asp.net 2.0中使用sitemapDATAsource做頁麵導航
  下一篇:go ASP.NET提供文件下載函數