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

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:
在ASP时代,如果我们要建立一个数据库驱动的web站点,那么你可以选择环很多钱的微软SQLSERVER数据库或者选择要花很多时间来寻找达到性能和稳定性统一的ACCESS数据库,但在.NET时代你有另一种选择,那就是:MySQL数据库

什么是MySQL数据库?

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

第一步下载和安装

与大多数软件一样,首先是得到并安装mysql数据库软件,获得Mysql数据库的方很简单,在
MySQLServer安装


MySQLServer安装


MySQLServer安装


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使管理数据库服务器不再是管理员的噩梦。

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
SQL 数据库连接 数据库
你不知道ADo.Net中操作数据库的步骤【超详细整理】
你不知道ADo.Net中操作数据库的步骤【超详细整理】
16 0
|
1月前
|
SQL 数据库 C#
C# .NET面试系列十一:数据库SQL查询(附建表语句)
#### 第1题 用一条 SQL 语句 查询出每门课都大于80 分的学生姓名 建表语句: ```sql create table tableA ( name varchar(10), kecheng varchar(10), fenshu int(11) ) DEFAULT CHARSET = 'utf8'; ``` 插入数据 ```sql insert into tableA values ('张三', '语文', 81); insert into tableA values ('张三', '数学', 75); insert into tableA values ('李四',
66 2
C# .NET面试系列十一:数据库SQL查询(附建表语句)
|
2月前
|
开发框架 Oracle 关系型数据库
ASP.NET实验室LIS系统源码 Oracle数据库
LIS是HIS的一个组成部分,通过与HIS的无缝连接可以共享HIS中的信息资源,使检验科能与门诊部、住院部、财务科和临床科室等全院各部门之间协同工作。 
37 4
|
3月前
|
存储 NoSQL API
一个小巧、快速、轻量级的 .NET NoSQL 嵌入式数据库
一个小巧、快速、轻量级的 .NET NoSQL 嵌入式数据库
142 0
|
6月前
|
安全 Shell 数据库
「学习记录」.NET程序的数据库密码解密
「学习记录」.NET程序的数据库密码解密
|
1月前
|
SQL 存储 关系型数据库
C# .NET面试系列十:数据库概念知识
#### 1. 为什么要一定要设置主键? 设置主键是数据库设计中的一个重要概念,有几个主要原因: 1、唯一性 ```c# 主键必须保证表中的每一行都有唯一的标识。这样可以避免数据冗余和不一致性。如果没有主键或者主键不唯一,就可能出现数据混乱或错误。 ``` 2、查询性能 ```c# 数据库系统通常会使用主键来加速数据检索。主键通常会被索引,这样可以更快速地找到特定行的数据,提高查询效率。 ``` 3、关联性 ```c# 主键常常用于建立表与表之间的关系。在关系数据库中,一个表的主键通常与其他表中的外键建立关联,这种关系对于数据的一致性和完整性非常重要。 ``` 4、数据完
131 1
C# .NET面试系列十:数据库概念知识
|
2月前
|
前端开发 数据库连接 数据库
ASP.NETMVC数据库完整CRUD操作示例
ASP.NETMVC数据库完整CRUD操作示例
32 0
|
3月前
|
关系型数据库 MySQL 数据库
Net Core备份MySQL数据库
Net Core备份MySQL数据库
31 2
|
4月前
|
关系型数据库 MySQL
报错Mysql:net start mysql 服务名无效
报错Mysql:net start mysql 服务名无效
97 0
|
4月前
|
Oracle 关系型数据库 数据管理
.NET医院检验系统LIS源码,使用了oracle数据库,保证数据的隔离和安全性
LIS系统实现了实验室人力资源管理、标本管理、日常事务管理、网络管理、检验数据管理(采集、传输、处理、输出、发布)、报表管理过程的自动化,使实验室的操作人员和管理者从繁杂的手工劳作中解放出来,提高了检验人员的工作效率和效益,降低了劳动成本和差错发生率。

热门文章

最新文章