被認(rèn)為是“世界上最流行的開放源代碼數(shù)據(jù)庫”的MySQL從最初一個毫不起眼的低成本數(shù)據(jù)庫服務(wù)器成長為驅(qū)動龐大Web網(wǎng)站和重要商業(yè)系統(tǒng)的服務(wù)器經(jīng)歷了一個漫長的歷程。但是,如果你是一位asp.net的開發(fā)人員,那么你總會碰到一個不如意的地方:MySQL原先是為UNIX平臺上的應(yīng)用程序設(shè)計的,所以對Windows的支持處于次要地位。
但是現(xiàn)在,Windows版本的MySQL已經(jīng)具備了與UNIX版本同樣的特性和穩(wěn)定性,而且它被認(rèn)為是用于Windows開發(fā)的可行的數(shù)據(jù)庫服務(wù)器。現(xiàn)在讓我們來看看你可以如何使用ODBC在.NET框架內(nèi)連接MySQL數(shù)據(jù)庫。
安裝
下載和安裝Windows版的MySQL。安裝很簡單——只用按照提示你就能夠立即安裝好并開始運(yùn)行了。如果碰到了問題,可以去MySQL的論壇看看,尋求幫助和解決方法。
要把ASP.NET和MySQL連接起來,你需要使用ODBC.NET。一般來說,ODBC.NET的DataPRovider是標(biāo)準(zhǔn)的.NET框架(1.1及以上的版本)的一部分,所以會和后者一起自動安裝好。
一旦確認(rèn)ODBC.NET安裝完畢,你就需要下載用于MySQL的ODBC驅(qū)動程序。再強(qiáng)調(diào)一遍,MySQL的開發(fā)人員都很樂意提供幫助——他們都在自己的Web網(wǎng)站上提供了這些驅(qū)動程序。在下載文件的時候你可以看看FAQ文檔,它會列出在往系統(tǒng)里安裝MySQL ODBC驅(qū)動程序期間可能碰到的所有的問題。
都做好了?現(xiàn)在就讓我們從一些代碼開始吧。
用ASP.NET連接MySQL
我最喜歡做的一件事情是閱讀,而且當(dāng)我沒有編寫像本文一樣的教學(xué)文章時,我會找一個安靜的角落補(bǔ)全參考書目表。不幸的是,我不是一個組織性很強(qiáng)的人,所以這常常搞得一團(tuán)糟。
那這又與我們今天要談的話題有什么關(guān)系呢?嗯,這是我第一個例子的開場白,這個例子就是創(chuàng)建一個像列表A里的書籍的數(shù)據(jù)庫。
要建立這個表格,就要使用下面的SQL查詢:
CREATE TABLE `books` (
`id` int(5) NOT NULL auto_increment,
`title` varchar(255) NOT NULL default '',
`authors` varchar(255) NOT NULL default '',
`year_of_publication` year(4) NOT NULL default '0000',
`date_added` date NOT NULL default '0000-00-00',
PRIMARY KEY (`id`)
) TYPE=MyISAM;
而要執(zhí)行這個查詢,就要使用MySQL安裝目錄下的“bin”文件夾的命令行客戶端軟件“mysql.exe”。下面就是具體命令:
c:/mysql/bin>mysql -u guest -p test
Enter passWord: ******
Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 13 to server version: 4.0.12-nt
Type 'help;' or '/h' for help. Type '/c' to clear the buffer.
mysql> CREATE TABLE `books` (
-> `id` int(5) NOT NULL auto_increment,
-> `title` varchar(255) NOT NULL default '',
-> `authors` varchar(255) NOT NULL default '',
-> `year_of_publication` year(4) NOT NULL default '0000',
-> `date_added` date NOT NULL default '0000-00-00',
-> PRIMARY KEY (`id`)
-> ) TYPE=MyISAM;
Query OK, 0 rows affected (0.02 sec)
一旦“書籍(books)”表格創(chuàng)建好了,就可以開始插入數(shù)據(jù)了。列表B里列舉了一些項目。現(xiàn)在,用ASP.NET做同樣的事情——執(zhí)行SELECT查詢(列表C)并在瀏覽器里顯示結(jié)果。如果一切都沒有問題——MySQL服務(wù)器在運(yùn)行,MySQL ODBC驅(qū)動程序安裝正確,“書籍”表格含有數(shù)據(jù)——你就應(yīng)該會看到像圖A里的頁面。


圖C向你顯示的錯誤信息會在腳本嘗試訪問一個不存在的數(shù)據(jù)庫表格時出現(xiàn)(要注意,內(nèi)層“try-catch”結(jié)構(gòu)產(chǎn)生的異常會由外層結(jié)構(gòu)來處理):

以上就是關(guān)于如何使用MySQL和ASP.NET的DataGrid服務(wù)器控件的介紹。關(guān)于你可以如何使用這兩種技術(shù)還有更多的內(nèi)容可談;所以我希望本文和上面提供的其他參考資源能夠幫助你對此有個初步的了解。
新聞熱點(diǎn)
疑難解答