ASP.NET编程:履历之谈:MySQL与ASP.NET共同更壮大
可怜的程序员,还是逃不出移植的命运!asp.net|mysql 开放源代码社区为了扩大MySQL的利用局限,开辟出了.Net框架(.NETFramework)中可使用的数据库毗连器。我们就来进修一下怎样在.Net使用程序中利用MySQL。因为富有合作力的代价和易于利用,MySQL在市场占据率方面慢慢提拔。开放源代码社区为了扩大MySQL的利用局限,开辟出了.Net框架(.NETFramework)中可使用的数据库毗连器。我们就来进修一下怎样在.Net使用程序中利用MySQL。
每周三公布的TechRepublic的.NET通信,包括有收集服务,ASP.NET,ADO.NET,和VisualStudio.NET相干的有用技能与代码实例.如今就主动定阅!
MySQL垂垂的成了在选择数据库平台时一个实在可行的数据库计划。可以证实这一点的就是很多公司都选择mySQL作为他们的数据库平台,比方Google、美联社(TheAssociatedPress)和美国国度航空宇航局(NASA)。固然关于一个开放源代码来讲,昂贵的代价经常被看成次要长处来讲服客户,可是关于象Google那样的年夜范围的构造来讲,他们不会宁神的把十分有效的信息寄存在一个只要代价上风的数据库产物中。MySQL真实的气力远远的凌驾了他的代价上风,他供应了丰厚的来自开放源代码社区和贸易化的附加工具。
和.NET的数据整合
MySQL社区已开辟出了MySQL的数据接口,他供应了毗连数据源和程序代码的基础功效。在Windows平台上,有以下的MySQL毗连器:
*MySQLConnector/Net1.0(之前被称为ByteFX.Data):是一个为MySQL计划的开放源代码.NET数据接口。它是完整用C#来开辟的,我们能够在在MySQL.com网站上找到它。(注重:在本文的例子中,我们城市利用MySQLConnector/Net1.0这个数据接口来毗连数据库,使用Windows安装程序便可容易安装它,它的代码实例和文档也包括个中。)
*MySQLDirect.NETDataProvider:是一个由CoreLab开辟的贸易数据接口。他的代价由购置的允许证的范例决意,可是我们能够下载它的试用版。
假如你利用Mono,那末在Mono网站上能够找到PHP毗连器的下载。假如你在Windows平台上运转Mono的话,你下载的毗连器包括了安装程序。假如不是的话,那就要依据你的操纵体系的品种往下载符合的毗连器了。
利用MySQL数据接口
安装好MySQL的数据接口后,你必需在你的代码中引进它才干利用。你可使用MySql.Data.MySqlClient这个名空间来毗连MySQL服务器。在C#中,可使用using语句来引进MySQL数据接口:
usingMySql.Data.MySqlClient;
别的,你也能够在一个ASP.NET的网页表单(WebForm)中经由过程利用导进(Import)指令来引进MySQL数据接口:
大概,你也能够在你的代码里在利用这个名空间时,写全一个类的完全路径,可是如许的话会比利用Import指令来导进输出更多的字符,华侈更多的字节。指定了名空间后,我们就能够和MySQL数据库举行数据交互了。MySql.Data.MySqlClient这个名空间供应了很多用于处置MySQL数据的类。上面是这些类的一个样本:
*MySqlConnection:办理和MySQL服务器/数据库的毗连;
*MySqlDataAdapter:一套用于添补DataSet工具和更新MySQL数据库的命令和毗连的汇合;
*MySqlDataReader:让你可以从一个MySQL数据库读取数据。它是一个单向的数据流;
*MySqlCommand:供应向数据库服务器发送指令的功效;
*MySqlException:当产生成绩时供应破例处置。
我们会利用个中的一些类往和我们的典范数据库举行数据交互。
毗连MySQL数据库
利用MySQL数据库的第一步是要经由过程MySQLConnection类和数据库创建毗连。经由过程一个毗连字串,MySqlConnection将会被实例化成一个示例。毗连字符串将告知代码到那里往找MySQL服务器和其他一些选项。
一个毗连字串告知代码利用指定的用户名和暗码往毗连一个名为MySQLTestServer的MySQL服务器,并进进techrepublic数据库。我在我的测试机上设定了同意匿名上岸(如许的设定有十分年夜的平安毛病,以是不倡议你在临盆服务器上也这么做),以是在典范中将会利用以下的毗连字串:
"server=localhost;database=sitepoint;"
指定了毗连字串后,MySqlConnection工具的Open办法就被挪用并翻开毗连。毗连创建后,你就能够给MySQL数据库发送死令或从数据库取得数据了。
ASP.NET和MySQL的组合
让我们更深切的会商一下分离MySqlConnection类和其他的类来天生一个MySQL服务器上的数据库列表。表B列出了一个利用C#写的ASP.NET的网页表单。它创建了一个毗连,接着给服务器下了一个指令(SHOWDATABASES),然后经由过程MySqlReader工具把了局显现出来。
用MySqlCommand工具向MySQL服务器发送SHOWDATABASES命令和间接在MySQL办理工具中输出这个命令得了局是一样的。独一的区分是,我们在代码中必需利用另外一个工具来猎取了局集。MySqlDataReader工具在猎取了局时被实例化(经由过程MySqlCommand类的ExecuteReader办法)。MySqlDataReader工具的GetString办法被用于经由过程ASP.NET的标签把持来显现了局会合的数据。GetString办法的指针0指定了显现了局集确当前行(在while轮回中)的第一列数据。
Mono提醒
假如你利用开放源代码的Mono开辟平台,例子中的代码只必要做小小的修改就可以一般的运转。MySQL的数据接口在ByteFX.Data.MySqlClient这个空间名里,而不是Windows上的MySql.Data.MySqlClient空间名。现实上MySQL的数据接口本来是由ByteFX公司开辟的,可是后被MySQL公司收买。以是假如你利用Mono的话,你必需如许声明空间名:
usingByteFX.Data.MySqlClient;
结语
MySQL和.NET的组合供应了一个壮大的开辟平台。MySQL在开源社区失掉了壮大的手艺撑持,.NET也经由过程Mono而被开放源代码社区所承受。如许的组合供应了一个在Windows,及其他言语如UNIX或Linux,情况下高度天真的开辟平台。
你所列的那些其实差不多都可以称为应用服务器(servlet应该说是一种语言更合适)java是开放的,相同的工具就会有很多公司在做,加上java已经发展了很多年了,因此这些工具就很多了。他们很多都是类似的。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。 在一个项目中谁敢保证每天几千万甚至几亿条的数据不丢失?谁敢保证应用的高可靠性?有可以借签的项目吗? 有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。 主流网站开发语言之JSP:JSP和Servlet要放在一起讲,是因为它们都是Sun公司的J2EE(Java2platformEnterpriseEdition)应用体系中的一部分。 主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。
页:
[1]