首页 > 语言 > 关键词 > ASP.NET最新资讯 > 正文

ASP.NET与MySQL数据库简明图示入门教程

2008-09-11 11:23 · 稿源:互联网

作者:CRYSTAL编译

在ASP时代,如果我们要建立一个数据库驱动的web站点,那么你可以选择环很多钱的微软SQLSERVER数据库或者选择要花很多时间来寻找达到性能和稳定性统一的ACCESS数据库,但在.NET时代你有另一种选择,那就是:MySQL数据库

什么是MySQL数据库?

MySQL数据库是一种开放源代码的数据库,通过获得授权来保持源代码的官方支持,同时可以自由修改源代码,目前许多公司和组织都采用了这种数据库。对此详细信息您可以访问MySQL的官方站点。

第一步下载和安装

与大多数软件一样,首先是得到并安装mysql数据库软件,获得Mysql数据库的方很简单,在http://dev.mysql.com/downloads/index.html.上可以自由下载,本文采用的是Mysql4.1,当然读者也可以下在其他版本,不过我要推荐给读者的是最好下载预编译的二进制的文件。我的操作平台是WindwosXP,所以我选择的是包括安装文件的Windows版,这个版本大约35M,所以下载的时间不是很长,除非你的网络有问题。

安装非常简单,按照安装步骤不会导致任何问题,如下图:


MySQLServer安装


MySQLServer安装


MySQLServer安装

ASP.NET与MySQL数据库简明图示入门教程src="img2005/104888491.gif"align=centervspace=1border=1>
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:DataGridid="MySQLDataGrid"runat="server"/>
 </form>
</body>
</html>
在上面的脚本中黑体字部分将随你采用的平台不同而进行修改,如采用SQLServer应用System.Data.SQLClient来替换MySql.Data.MySqlClient,这只是一点,更详细的本文就不讨论了。下图是脚本运行结果:


脚本运行结果
结论:

我希望本文能对读者理解数据库服务器有所帮助,当你打算从access或SQLServer上升级的时候,MySQL是一个不错的选择,尽管它是开放源代码的,而且还有些缺陷,但它与.NET的结合能做许多工作,另外MySQLAdministrator使管理数据库服务器不再是管理员的噩梦。

网友热搜:

  • 相关推荐
  • 大家在看
  • TypeScript 热度超 C 与 Python、Go 开发收入高、运维吃香,调查了 65000 名开发者有这些发现!

    近十年来,Stack Overflow的年度开发者调查问卷被誉为全球范围内最大的开发者调查。为了寻求多样化的代表,Stack Overflow的官方将调查问卷从技术和行为等方面提出了各类问题,希望收集的信息能够帮助改善Stack Overflow开发者的社区。

  • C男控是什么意思 C男控是什么梗

    最近不少的小伙伴在网络看到一个比较有趣的词语——C男控,很多人不了解什么是C男控,这个到底代表什么意思呢?下面就来为大家分享一下C男控这个梗。

  • OKEx C2C借贷上线WEB端 产品矩阵愈加完善

    随着加密货币市场对稳健理财强烈需求的显现,C2C借贷逐渐成为加密货币市场布局的新赛道。近日,全球著名的加密货币交易平台OKEx上线C2C借贷功能WEB端,再次为行业发展注入强劲动能。三步完成借币继3月19日在APP端全面上线C2C借贷功能后,OKEx产品线再添新成员,于6月23日宣布其C2C借贷功能现已上线WEB端。用户可前往OKEx官网进行借币操作,通过质押BTC或ETH借到USDT,实现资金的灵活周转。整个借币过程操作简单方便,三步即可完成?

  • Esprinet以3400万欧元收购GTI

    [TechWeb]意大利批发商Esprinet宣布已与GTI达成协议,以购买该公司100%的股份。这项行动共计3380万欧元,将在当局于9月底批准时以现金支付。通过购买GTI,Esprinet凭借收入和与Tech Data的距离本身,成为西班牙市场上第一家批发商,该公司在过去几年中一直与该公司争夺排名第一的位置。此外,GTI将提供Esprinet,该公司在西班牙经营JoséMaríaGarcía(这是一项补充业务),该业务是通过云销售的软件,尤其是Microsoft的软件。?

  • Planet将通过SpaceX的火箭发射6颗Skysat卫星

    DoNews 6月10日消息(记者 刘文轩)据The Verge报道,卫星影像公司Planet将在6月和7月的两次卫星发射中,采用SpaceX的火箭,各运送3颗110kg重的卫星。至于价格,SpaceX则是以每公斤500美元的价格来计算,Planet发射副总裁Mike Safyan表示,SpaceX将发射费用压低到“难以置信”的程度。Planet原本运营着60颗中解析度卫星,2017年收购Google的Terra Bella卫星影像部门后,Planet拥有了7颗高解析度Skysat卫星。在这之后,Planet又发射

  • 京东:今日在港公开发售 最高公开发售价为236港元/股

    今日,京东在港交所公告称, 6 月 8 日(星期一)上午九时开始香港公开发售,预期 6 月 11 日(星期四)定价, 6 月 18 日上午九时正在香港联交所交易。在港上市最高公开发售价为 236 港元/股,将发行1. 33 亿股发售股份。

  • 长光华芯完成1.5亿C轮融资

    长光华芯完成1.5亿人民币C轮融资的工商变更,标志着2019年7月启动的C轮融资顺利完成。本轮融资由华泰证券旗下伊犁苏新投资基金领投,国投(宁波)科技成果转化创业投资基金、南京道丰投资跟投,含苏州芯诚、苏州芯同两个长光华芯员工股权激励平台,总融资额1.5亿元。长光华芯成立于2012年,主要致力于高功率半导体激光器芯片、高效率VCSEL芯片、高速光通信芯片及相关光电器件和应用系统的研?

  • 如何让客厅有颜有料?TCL C8电视轻松帮到你

    客厅是家中最重要的娱乐活动区域,所谓“客厅”,顾名思义是平时用来接待客人的地方,自然也是一个家的门面,是家庭装修的重中之重。因此笔者在这给大家提供一些客厅装修的小贴士,希望能够让大家少踩坑。大家对客厅的装修风格各有不同,但首先都要注意保证客厅位置的采光,这能让人觉得客厅更大,家具也要先考虑实用性才购买,预留足够的活动空间。其次是,像电线、水管、涂料、瓷砖(地板)等硬装一定要选择质量高的,避免使用过

  • 日本动画电影《无限》线上首映 西瓜视频与Netflix全球同步播出

    【TechWeb】6月18日消息,今天下午6点,日本动画电影《无限》(又名《想哭的我戴上了猫的面具》)开启全球首映,在中国通过西瓜视频、抖音、今日头条平台上线。这是继BBC剧集《德古拉》后,西瓜视频再度实现与Netflix全球同步播出影视作品。届时,用户可在上述平台中付费观看该片。 公开资料显示,《无限》由日本著名导演佐藤顺一和柴山智隆联合执导,主要讲述女生笹木美代的青春奇幻故事,主打超萌轻甜治愈风格。绰号为“无限”?

  • 红布林扎根二手奢侈品垂直领域,打造完善的C2B2C供应链体系

    如今的中国正步入奢侈品热销时代,截止到 2019 年中国消费者的奢侈品消费总额已经超过 7000 亿人民币,越来越多的中国消费者享受着奢侈品带来的独有品味,个性情调与专属魅力。在这种社会大背景的催动下,不少收入有限的“潮人”开始通过二手奢侈品消费,满足自己对高品质生活的追求;另外一些卖家为了获取周转资金,也愿意投身到二手奢侈品交易之中,为此买卖双方客观存在的供需关系,让二手奢侈品消费市场成为当代手头资金有限,

  • BSN合格开发者介绍——米链科技

    2020 年 6 月 1 日,杭州米链科技有限公司正式成为国家级区块链服务网络BSN的合格开发者资格,将为BSN的开发者提供专业技术支持。BSN是由国家信息中心、中国移动、中国银联等机构共同发起组建的一个跨云服务、跨门户、跨底层架构,用于部署和运行区块链应用的全球性公共基础设施网络。BSN是全球首个由中国自主创新并控制入网权的网络基础设施网络,可在全球进行快速部署。区块链服务网络(Blockchain-based Service Network)(以?

  • 直播转化金额破亿 方太是如何站上厨电直播C位的?

    最新数据显示,截至 6 月 18 日 24 点,方太全网销售额突破5. 8 亿,居厨电行业店铺类渠道排名Top1。与去年同期的3. 1 亿相比,涨幅高达87.1%,而这其中,直播销售占比高达20.7%。  

  • IBM退出面部识别 将不再开发或研究该技术

    外媒报道称,在6月8日本周一,IBM首席执行官阿里德·克里希纳(Arvind Krishna)在致美国国会的一封信中说,IBM将不再提供通用的面部识别或分析软件。IBM表示,该公司也将不再开发或研究该技术。

  • Redmi 9A、Redmi 9C官宣:大电池、大屏幕

    上周,小米旗下品牌Redmi在国内发布了新款入门级Redmi 9,价格799元起,而现在,小米马来西亚官方宣布了两款新机Redmi 9A、Redmi 9C,和之前的套路类似。小米称,Redmi 9A/9C将于6月30日在马来

  • 互联网巨头集体蹭“地摊经济”,谁能C位出道?

    忽如一夜春风来,千摊万摊到处开。开的有多么繁荣呢?仅成都就设置临时占道摊点、摊区 2234 个,允许流动摊贩经营点 17891 个,增加就业岗位超 10 万。许昌、杭州也开始逐渐参与其中。因此有声音说当前互联网红利正在逐渐消失,“地摊经济”或许会对电商平台造成不小的冲击。

  • 明年起苹果将采用USB-C接口 最终目标是实现无接口化

    据MacOtakara报道,来自中国供应商的消息称, 2021 年起,苹果将调整新iPhone和iPad的接口,让这些设备都使用USB-C接口,保证兼容性更高。而上周出现的iPhone13 模型也显示新机似乎采用了USB-C接口。

  • 丰田新款C-HR专利图曝光:有望引进混动版

    近日,有国内媒体曝光了一组新款丰田C-HR车型的专利图,未来国产C-HR/奕泽将参考海外同步进行改款。值得一提是,有消息称新车还有望引进混合动力系统。作为年度小改款车型,新车延续了欧规C-H

  • 因认为PPT太呆板,她一气之下开发了自己的演示软件

    Digidecks是一款多媒体幻灯片软件,它的诞生非常戏剧性,源自于创始人Angelina Lawton(安吉丽娜·劳顿)对PPT的不满。当时,劳顿正在为Tampa Bay Lightning(坦帕湾闪电队)宣传。她无法接受的是,这样一支令人兴奋的专业曲棍球队竟然用如此呆板的形式向潜在赞助商推广。

  • 苹果或将开发可折叠iPhone 机身圆润无刘海

    据知名苹果爆料大神Jon Prosser透露,苹果正在开发一款可折叠的iPhone原型机。和以往采用一块柔性屏幕折叠的折叠屏手机不同,苹果的可折叠手机是将两个独立的显示面板通过铰链连接,中框为带弧度的不锈钢材质,在设计语言上和目前的iPhone11 差不多,无刘海,但在显示屏外侧有一个 "小小的额头",用于Face ID。不过,该爆料人认为,可折叠的iPhone今年上市的可能性不大。

  • 京东今日在港公开发售 定价上限236港元

    今日,京东在港发布公告称,今日上午九时开始香港公开发售,预期 6 月 11 日(星期四)定价, 6 月 18 日上午九时正在香港联交所交易,在港公开发售定价上限为 236 港元,将发行1. 33 亿股发售股份。

  • 参与评论
文明上网理性发言,请遵守新闻评论服务协议

热文

  • 3 天
  • 7天