热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

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

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

  作者: CRYSTAL编译

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

  什么是MySQL数据库?

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

  第一步 下载和安装

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

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


MySQL Server安装


MySQL Server安装


MySQL Server安装


MySQL Server安装

  如图所示,在安装完成的最后一步,系统会问你是否要配置MySQL服务器,如果选择现在配置MySQL服务器,那么系统将自动运行MySQL实例配置向导,于是你将进入下一步。

  第二步 配置

  MySQL服务器实例配置向导使配置服务器变得非常简单,按照配置向导一步一步的走,绝大多数时候都选择缺省配置。


MySQL服务器配置向导


MySQL服务器配置向导

  如上图,读者可以自行选择是安装在专用的数据库服务器上或是共享的服务器,由于我使用的笔记本电脑,所以我选择是最简单的"Developer Machine",这个设置不能提供同样的性能,而且也不能使用很多系统资源


MySQL服务器配置向导—选择数据库的用途


MySQL服务器配置向导—指定TCP/IP和端口号

  必须确保响应TCP/IP网络协议,以保证Web页载需要的时候Web服务器能连接数据库;如果你的数据库和web服务器安装在同一台服务器上,那么可以禁用这个选项以防止来自网络的访问。
  MySQL服务器配置向导—设置默认字符串类型


MySQL服务器配置向导


MySQL服务器配置向导—安装服务


MySQL服务器配置向导—设置SQL连接密码


MySQL服务器配置向导—即将完成配置

  第三步 MySQL Administrator

  也许你认为可以不需要这个东西,但我还是要建议你下载并使用MySQL Administrator,它提供图形界面以帮助你管理MySQL数据库,Windows用户可以通过命令提示行运行MySQL Administrator,在余下时间里我假定你已经安装了MySQL Administrator,并且将使用相关图例。


MySQL Administrator主界面


  第四步 创建数据库

  要创建数据库,我们必须首先连接服务器。运行MySQL Administrator并登陆服务器。


运行MySQL Administrator并登陆服务器


  选择MySQL Administrator左侧底部的"Catalogs",然后在管理器的右侧会出现目前服务器上已经有的数据库目录,右击Schema窗口的"mysql",选择"Create New Schema"。


创建一个新的数据库


  系统将提示你输入数据库的名称,这里我们使用"mydatabase",在本文以后也将使用这个名称。


输入数据库名称


  一旦创建后,新数据库就将与服务器中的其他数据库一起出现在Schema窗口,选择它后,在右侧窗口将出现它的详细资料。

    完成新数据库的创建:


新的数据库创建完成了


  现在这里面还没有更多的东西,因为目前数据库还是空的。下面我们就为数据库添加点东西。

  第五步 创建表

  创建表很简单,只需要点击"Create Table"按钮,于是将出现下面的对话框:


创建表


  如图所示,我们已经给表取名为"mytable",有四个域,其中id域为自动增量的主键、一个整数域、一个文本域和一个时间/日期域。

  在完成这些后,点击"Apply Changes"按钮,将出现如下图的窗口,窗口中的是创建表的SQL语句,同时询问是否执行,当然点击"Execute"。


确认并执行表中的SQL语句


  到目前为止,我们已经创建了一个包含名为"mytable"的表的名为"mydatabase"的数据库,下面我们要做的就是为数据库添加点数据。

  第六步 添加数据

  在真实情况中,添加数据是通过应用程序来实现的,但现在仅仅是要添加几个样本数据,所以我将在MySQL客户端命令中使用SQL语句的insert语句来实现,如果现在你还在MySQL Administrator中,那么可以通过菜单"tools"来访问命令行(Tools -> MySQL Command Line Client),否则可以通过开始菜单的MySQL组来访问。


通过命令行语句来实现添加数据


  图中的第一行是告诉服务器我将使用那个数据库,第二和第三仅仅是简单的向数据库插入数据。

  现在数据表中有两个样本数据,到目前为止,我们的数据库服务器已经建立并运行了,里面有一个数据库,一个数据表,一些数据。

  第七步 创建新的MySQL用户账号

  要添加用户账号需要再一次运行并登陆MySQL Administrator,在MySQL Administrator窗口的左边选择"User Administration",同时右边将显示服务器现行账号的信息(这里通常是所谓的root),右击下面小窗口里的账号,选择"Add new User"。


再次运行MySQL Administrator,并添加一个用户帐号


  接下来系统将提示你输入新用户的详细信息,我给新用户取名为"15secs",口令设置为"password".


设置用户名、密码等常规选项


  完成这些后,点击"Apply Changes"按钮以保存输入。

  第八步 给用户账号授权

  缺省状况下的新用户几乎什么都做不了,要允许新用户连接MySQL数据库必须在"Schema Privileges"中进行授权,这一切将在MySQL Administrator.中的"Schema Privileges"中完成。


为新开帐号设置权限


  注意上图还没有为用户进行任何授权,由于后面的代码需要查询数据库,故需要授予用户"select"权限,然后点击"Apply Changes"按钮保存。

    进行授权:


进行授权


  也许应用程序需要更多的权限,如:"INSERT", "UPDATE", 和 "DELETE"等等,你可以用同样的方法授予给用户,但要注意的是,权限越多安全越小,你必须对每个用户都实行控制。

  第九步 ASP.NET页连接数据库服务器

  在.NET中连接MySQL数据库有两种方法:MySQL Connector/ODBC 和 MySQL Connector/Net,ODBC连接器是符合ODBC标准的交互平台,是.NET访问MySQL数据库的最好的选择。

  下载MySQL Connector/Net,然后直接安装,如下图:


MySQL Connector/Net安装图


MySQL Connector/Net安装图


MySQL Connector/Net安装图


MySQL Connector/Net安装图

  注意:我选择了register Connector/NET in the Global Assembly Cache,但我发现它已经被安装了,但我不能使用import语句,找不到Connector/NET的名称空间,直到将MySql.Data.dll文件拷贝到/bin目录下后才解决这个问题,系统报出的错误是:

 
BC30466: Namespace or type specified in the Imports 'MySql.Data.MySqlClient' cannot be found

  我相信这个问题依然存在,只能暂时用手工将文件从安装位置拷贝到相应的目录中,如:C:\Program Files\MySQL\MySQL Connector Net 1.0.4\bin\.NET 1.1\,拷贝到C:\Inetpub\wwwroot\bin\,就可以解决这个问题。

  第十步 示例程序

  至此我们的数据库终于完成,MySQL Connector/Net也安装成功,我们该做点其他什么事情了。下面我将提供一段简单的脚本,在这段脚本中,我们将连接和查询数据库中的数据,输入数据不是脚本的要点。 MySQL.aspx

<%@ Page Language="VB" debug="true" %>
<%@ Import Namespace = "System.Data" %>
<%@ Import Namespace = "MySql.Data.MySqlClient" %>
<script language="VB" runat="server">

Sub Page_Load(sender As Object, e As EventArgs)

 Dim myConnection As MySqlConnection
 Dim myDataAdapter As MySqlDataAdapter
 Dim myDataSet As DataSet

 Dim strSQL As String
 Dim iRecordCount As Integer

 myCOnnection= New MySqlConnection("server=localhost; user id=15secs; password=password; database=mydatabase; pooling=false;")

 strSQL = "SELECT * FROM mytable;"

 myDataAdapter = New MySqlDataAdapter(strSQL, myConnection)
 myDataSet = New Dataset()
 myDataAdapter.Fill(myDataSet, "mytable")

 MySQLDataGrid.DataSource = myDataSet
 MySQLDataGrid.DataBind()

End Sub

</script>

<html>
 <head>
  <title>Simple MySQL Database Query</title>
 </head>
<body>

 <form runat="server">
  <asp:DataGrid id="MySQLDataGrid" runat="server" />
 </form>
</body>
</html>

  在上面的脚本中黑体字部分将随你采用的平台不同而进行修改,如采用SQL Server应用System.Data.SQLClient来替换MySql.Data.MySqlClient,这只是一点,更详细的本文就不讨论了。下图是脚本运行结果:


脚本运行结果

  结论:

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


推荐阅读
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • Oracle Database 10g许可授予信息及高级功能详解
    本文介绍了Oracle Database 10g许可授予信息及其中的高级功能,包括数据库优化数据包、SQL访问指导、SQL优化指导、SQL优化集和重组对象。同时提供了详细说明,指导用户在Oracle Database 10g中如何使用这些功能。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 如何实现织梦DedeCms全站伪静态
    本文介绍了如何通过修改织梦DedeCms源代码来实现全站伪静态,以提高管理和SEO效果。全站伪静态可以避免重复URL的问题,同时通过使用mod_rewrite伪静态模块和.htaccess正则表达式,可以更好地适应搜索引擎的需求。文章还提到了一些相关的技术和工具,如Ubuntu、qt编程、tomcat端口、爬虫、php request根目录等。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 推荐一个ASP的内容管理框架(ASP Nuke)的优势和适用场景
    本文推荐了一个ASP的内容管理框架ASP Nuke,并介绍了其主要功能和特点。ASP Nuke支持文章新闻管理、投票、论坛等主要内容,并可以自定义模块。最新版本为0.8,虽然目前仍处于Alpha状态,但作者表示会继续更新完善。文章还分析了使用ASP的原因,包括ASP相对较小、易于部署和较简单等优势,适用于建立门户、网站的组织和小公司等场景。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 如何去除Win7快捷方式的箭头
    本文介绍了如何去除Win7快捷方式的箭头的方法,通过生成一个透明的ico图标并将其命名为Empty.ico,将图标复制到windows目录下,并导入注册表,即可去除箭头。这样做可以改善默认快捷方式的外观,提升桌面整洁度。 ... [详细]
  • Java实战之电影在线观看系统的实现
    本文介绍了Java实战之电影在线观看系统的实现过程。首先对项目进行了简述,然后展示了系统的效果图。接着介绍了系统的核心代码,包括后台用户管理控制器、电影管理控制器和前台电影控制器。最后对项目的环境配置和使用的技术进行了说明,包括JSP、Spring、SpringMVC、MyBatis、html、css、JavaScript、JQuery、Ajax、layui和maven等。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文讲述了作者通过点火测试男友的性格和承受能力,以考验婚姻问题。作者故意不安慰男友并再次点火,观察他的反应。这个行为是善意的玩人,旨在了解男友的性格和避免婚姻问题。 ... [详细]
  • 本文介绍了在Mac上搭建php环境后无法使用localhost连接mysql的问题,并通过将localhost替换为127.0.0.1或本机IP解决了该问题。文章解释了localhost和127.0.0.1的区别,指出了使用socket方式连接导致连接失败的原因。此外,还提供了相关链接供读者深入了解。 ... [详细]
  • yum安装_Redis —yum安装全过程
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Redis—yum安装全过程相关的知识,希望对你有一定的参考价值。访问https://redi ... [详细]
author-avatar
zhaoyunnidaye_260
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有