成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在ASP.NET應(yīng)用程序中使用MySQL

開發(fā) 后端 數(shù)據(jù)庫運(yùn)維
開放源代碼社區(qū)為了擴(kuò)展MySQL的使用范圍,開發(fā)出了.Net框架(.NET Framework)中可以使用的數(shù)據(jù)庫連接器。我們就來學(xué)習(xí)一下如何在.Net應(yīng)用程序中使用MySQL。

由于富有競爭力的價(jià)格和易于使用,MySQL在市場占有率方面逐步提升。開放源代碼社區(qū)為了擴(kuò)展MySQL的使用范圍,開發(fā)出了.Net框架(.NET Framework)中可以使用的數(shù)據(jù)庫連接器。我們就來學(xué)習(xí)一下如何在.Net應(yīng)用程序中使用MySQL。

每周三發(fā)布的TechRepublic的.NET通訊,包含有網(wǎng)絡(luò)服務(wù), ASP.NET, ADO.NET, 和 Visual Studio .NET相關(guān)的實(shí)用技巧與代碼實(shí)例. 現(xiàn)在就自動訂閱!

MySQL漸漸的成為了在選擇數(shù)據(jù)庫平臺時(shí)一個(gè)切實(shí)可行的數(shù)據(jù)庫方案。能夠證明這一點(diǎn)的就是許多公司都選擇mySQL作為他們的數(shù)據(jù)庫平臺,例如 Google、美聯(lián)社(The Associated Press) 以及美國國家航空宇航局( NASA)。雖然對于一個(gè)開放源代碼來說,低廉的價(jià)格常常被當(dāng)作主要優(yōu)點(diǎn)來說服客戶,但是對于象Google那樣的大規(guī)模的組織來說,他們不會放心的把非常有用的信息存放在一個(gè)只有價(jià)格優(yōu)勢的數(shù)據(jù)庫產(chǎn)品中。MySQL真正的實(shí)力遠(yuǎn)遠(yuǎn)的超過了他的價(jià)格優(yōu)勢,他提供了豐富的來自開放源代碼社區(qū)和商業(yè)化的附加工具。

和.NET的數(shù)據(jù)整合

MySQL 社區(qū)已經(jīng)開發(fā)出了MySQL的數(shù)據(jù)接口,他提供了連接數(shù)據(jù)源和程序代碼的基本功能。在Windows平臺上,有如下的MySQL連接器:

◆MySQL Connector/Net 1.0 (之前被稱為ByteFX.Data):是一個(gè)為MySQL設(shè)計(jì)的開放源代碼.NET數(shù)據(jù)接口。它是完全用C#來開發(fā)的,我們可以在在 MySQL.com網(wǎng)站上找到它。(注意:在本文的例子中,我們都會使用MySQL Connector/Net 1.0這個(gè)數(shù)據(jù)接口來連接數(shù)據(jù)庫,利用Windows安裝程序即可輕易安裝它,它的代碼實(shí)例和文檔也包含其中。)

◆MySQLDirect .NET Data Provider: 是一個(gè)由 Core Lab 開發(fā)的商業(yè)數(shù)據(jù)接口。他的價(jià)格由購買的許可證的類型決定,但是我們可以下載它的試用版。

如果你使用 Mono,那么在 Mono網(wǎng)站上可以找到PHP連接器的下載。如果你在Windows平臺上運(yùn)行Mono的話,你下載的連接器包含了安裝程序。如果不是的話,那就要根據(jù)你的操作系統(tǒng)的種類去下載合適的連接器了。

使用MySQL數(shù)據(jù)接口

安裝好MySQL的數(shù)據(jù)接口后,你必須在你的代碼中引入它才能使用。你可以使用 MySql.Data.MySqlClient這個(gè)名空間來連接 MySQL 服務(wù)器。在C#中,可以使用using語句來引入MySQL數(shù)據(jù)接口:

using MySql.Data.MySqlClient; 

另外,你也可以在一個(gè)ASP.NET的網(wǎng)頁表單(Web Form)中通過使用導(dǎo)入(Import)指令來引入MySQL數(shù)據(jù)接口:

或者,你也可以在你的代碼里在使用這個(gè)名空間時(shí),寫全一個(gè)類的完整路徑,但是這樣的話會比使用Import指令來導(dǎo)入輸入更多的字符,浪費(fèi)更多的字節(jié)。指定了名空間后,我們就可以和MySQL數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互了。 MySql.Data.MySqlClient這個(gè)名空間提供了許多用于處理MySQL數(shù)據(jù)的類。下面是這些類的一個(gè)樣本:

◆MySqlConnection: 管理和 MySQL 服務(wù)器/數(shù)據(jù)庫的連接;

◆MySqlDataAdapter: 一套用于填充DataSet對象和更新MySQL數(shù)據(jù)庫的命令和連接的集合;

◆MySqlDataReader: 讓你能夠從一個(gè) MySQL 數(shù)據(jù)庫讀取數(shù)據(jù)。它是一個(gè)單向的數(shù)據(jù)流;

◆MySqlCommand: 提供向數(shù)據(jù)庫服務(wù)器發(fā)送指令的功能;

◆MySqlException: 當(dāng)發(fā)生問題時(shí)提供例外處理。

我們會使用其中的一些類去和我們的范例數(shù)據(jù)庫進(jìn)行數(shù)據(jù)交互。

連接 MySQL 數(shù)據(jù)庫

使用MySQL數(shù)據(jù)庫的***步是要通過MySQLConnection類和數(shù)據(jù)庫建立連接。通過一個(gè)連接字串,MySqlConnection 將會被實(shí)例化成一個(gè)示例。連接字符串將告訴代碼到哪里去找MySQL服務(wù)器以及其他一些選項(xiàng)。

一個(gè)連接字串告訴代碼使用指定的用戶名和密碼去連接一個(gè)名為MySQLTestServer的MySQL服務(wù)器,并進(jìn)入techrepublic數(shù)據(jù)庫。我在我的測試機(jī)上設(shè)定了允許匿名登陸(這樣的設(shè)定有非常大的安全漏洞,所以不建議你在生產(chǎn)服務(wù)器上也這么做),所以在范例中將會使用如下的連接字串:

"server=localhost; database=sitepoint;"

指定了連接字串后, MySqlConnection 對象的Open方法就被調(diào)用并打開連接。連接建立后,你就可以給MySQL數(shù)據(jù)庫發(fā)送命令或從數(shù)據(jù)庫獲得數(shù)據(jù)了。

ASP.NET和MySQL的組合

讓我們更深入的討論一下結(jié)合MySqlConnection類和其他的類來生成一個(gè)MySQL服務(wù)器上的數(shù)據(jù)庫列表。表 B列出了一個(gè)使用C#寫的ASP.NET的網(wǎng)頁表單。它建立了一個(gè)連接,接著給服務(wù)器下了一個(gè)指令(SHOW DATABASES),然后通過MySqlReader對象把結(jié)果顯示出來。

用 MySqlCommand 對象向MySQL服務(wù)器發(fā)送 SHOW DATABASES 命令和直接在 MySQL 管理工具中輸入這個(gè)命令得結(jié)果是一樣的。唯一的區(qū)別是,我們在代碼中必須使用另一個(gè)對象來獲取結(jié)果集。MySqlDataReader 對象在獲取結(jié)果時(shí)被實(shí)例化(通過 MySqlCommand 類的 ExecuteReader 方法)。MySqlDataReader 對象的 GetString 方法被用于通過ASP.NET的標(biāo)簽控制來顯示結(jié)果集中的數(shù)據(jù)。GetString 方法的指針0指定了顯示結(jié)果集的當(dāng)前行(在while循環(huán)中)的***列數(shù)據(jù)。

Mono提示

如果你使用開放源代碼的Mono開發(fā)平臺,例子中的代碼只需要做小小的改動就能正常的運(yùn)行。MySQL的數(shù)據(jù)接口在 ByteFX.Data.MySqlClient 這個(gè)空間名里,而不是Windows上的MySql.Data.MySqlClient空間名。事實(shí)上 MySQL 的數(shù)據(jù)接口原來是由 ByteFX公司開發(fā)的,但是后被MySQL公司收購。所以如果你使用Mono的話,你必須這樣聲明空間名:

using ByteFX.Data.MySqlClient; 

結(jié)語

MySQL 和 .NET 的組合提供了一個(gè)強(qiáng)大的開發(fā)平臺。MySQL在開源社區(qū)得到了強(qiáng)大的技術(shù)支持,.NET也通過 Mono 而被開放源代碼社區(qū)所接受。這樣的組合提供了一個(gè)在Windows,及其他語言如UNIX或Linux,環(huán)境下高度靈活的開發(fā)平臺。

【編輯推薦】

  1. 詳解MySQL分組查詢Group By實(shí)現(xiàn)原理
  2. MySQL***高并發(fā)網(wǎng)站實(shí)戰(zhàn)攻略
  3. MySQL鮮為人知的幾個(gè)特殊技巧
責(zé)任編輯:彭凡 來源: blogbus
相關(guān)推薦

2021-11-02 13:54:41

ElasticSear.NET程序

2009-07-27 16:09:50

2009-07-29 17:01:13

2009-08-05 10:16:54

部署ASP.NET應(yīng)用

2009-07-20 16:08:04

ASP.NET應(yīng)用程序

2017-04-21 12:03:46

MacASP.NET Cor程序

2009-07-21 15:02:19

ASP.NET應(yīng)用程序

2009-07-22 17:32:40

ASP.NET應(yīng)用程序

2009-07-23 13:26:21

2013-03-25 10:38:24

ASP.NETHttpModule

2011-05-23 13:43:19

ASP.NETIIS7

2021-03-17 09:45:31

LazyCacheWindows

2021-02-06 21:40:13

SignalR通訊TypeScript

2021-02-02 16:19:08

Serilog日志框架

2021-03-10 09:40:43

LamarASP容器

2021-02-28 20:56:37

NCache緩存框架

2021-02-03 13:35:25

ASPweb程序

2021-01-28 22:39:35

LoggerMessa開源框架

2021-01-07 07:39:07

工具接口 Swagger

2021-03-03 22:37:16

MediatR中介者模式
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 中文字幕在线一区二区三区 | 亚洲一区二区电影网 | av色站 | 韩国理论电影在线 | 久久久久国产一区二区三区 | 国产精品一区二区久久 | 日韩欧美精品在线 | 久久这里只有精品首页 | 国产欧美一区二区精品久导航 | 给我免费的视频在线观看 | 在线观看成人小视频 | 免费簧片视频 | 国产一伦一伦一伦 | 日韩毛片在线观看 | 99精品99久久久久久宅男 | 观看av| 国产91亚洲精品一区二区三区 | 欧美freesex黑人又粗又大 | 亚洲一区二区三区在线播放 | 久久免费视频在线 | 亚洲欧洲视频 | 9999在线视频| 午夜久久久久久久久久一区二区 | 综合激情久久 | 国产亚洲第一页 | 日韩有码在线观看 | 色资源站| 伊人免费在线观看 | 久久久性色精品国产免费观看 | 在线观看国产wwwa级羞羞视频 | 亚洲欧美一区二区三区国产精品 | 亚洲精品在线免费观看视频 | 在线三级电影 | 国产精品日韩高清伦字幕搜索 | 天天看夜夜 | 在线观看av网站 | 成人黄色电影在线播放 | 韩国av网站在线观看 | 国产麻豆乱码精品一区二区三区 | 国产精品久久精品 | 日日艹夜夜艹 |