|
注:以下内容仅供初学者进行简单了解,如有概念性错误麻烦指出,谢谢。
需要准备的东西:
- MySQL Server
- MySQL for Visual Studio
- Connector/NET
- 一个可视化的数据库管理工具[如果不太习惯命令提示符下建立表格的话,个人喜欢DBeaver]
0.安装MySQL Server(可以参考黑里怕大佬的教程或者一叶知秋大佬的教程)
1.安装MySQL for Visual Studio与Connector/NET(Windows下的安装):
1.1 如果之前安装MySQL之后有MySQL Installer,先运行MySQL Installer。
之后会出现以下界面:

MySQL Installer的界面
Step 1. 单击 Add ... 以进入添加组件的模式

Step 2. 选择Applications->MySQL for Visual Studio 1.2 (也可能是其他版本)->MySQL for Visual Studio 1.2.9 (也可能是其他版本)

Step 3. 单击绿色的向右箭头添加MySQL for Visual Studio 1.2.9到右侧的Products To Be Installed


Step 4. 选择Applications->MySQL Connectors->Connector/NET->Connector/NET 8.0 (根据实际情况选择版本,如果.NET Framework版本高于4.6.2可以使用8.0)->Connector/NET 8.0.22

Step 5. 单击绿色的向右箭头添加Connector/NET 8.0.22到右侧的Products To Be Installed

Step 6.单击Next>进入以下界面:

Step 7.单击Execute进行安装:

Step 8.安装完成,单击Next>:

Step 9.安装完成,出现下图界面,单击Finish完成初步安装:

肉眼可见新增两个组件:

<hr/> 当然,以上内容需要有MySQL Installer的大佬才能这么操作,那么接下来需要说说没有MySQL Installer的大佬怎么安装。
1.2 通过MSI安装包安装MySQL for Visual Studio与Connector/NET。
Step 1.下载MySQL for Visual Studio与Connector/NET的安装包
下载地址:
- MySQL for Visual Studio
- Connector/NET
当然,MySQL for Visual Studio也可以下载ZIP Archive版本。只是这里仅对MSI Installer版本进行说明:
Step 2.运行MySQL for Visual Studio或Connector/NET安装程序
✦这里我先安装Connector/NET:

Step 3.单击Next

Step 4.选择安装类型,初学或者选择困难症建议选择Typical,常用的组件基本都会安装

Step 5.单击Install进行安装

Step 6.Connector/NET安装完成:

Step 7.安装MySQL for Visual Studio,过程同上即可(实际上是手懒不想多打字了而已)
2.通过MySQL for Visual Studio插件连接:
Step 1.启动Visual Studio (这里演示的版本是Visual Studio Professional 2019)

Step 2.新建http://ASP.NET Web 应用程序 (.NET Framework)

Step 3.新建数据连接
Step 3.1.打开服务器资源管理器,右键单击数据连接,单击添加连接:

Step 3.2.选择数据源MySQL Database,单击继续 :

Step 3.3.完善连接数据库的信息:

我连接的数据库信息如下:

单击测试连接检查是否正确连接,点击确定以添加连接

添加成功
Step 3.4.添加控件
以GridView为例:
在选择数据源下拉菜单中选择<新建数据源...>

在数据源配置向导中选择数据库然后单击确定 :

选择刚才添加的连接 然后单击下一步 :

继续下一步(这样会把连接存储到应用程序配置文件中)

这里选择指定自定义SQL语句或存储过程 (默认的指定来自表或视图的列使用的语法不被MySQL接受),单击下一步

以SELECT * FROM CITY为例自定义SELECT语句,单击下一步

接下来单击“测试查询”检验语法是否正确,如果正确,单击完成。

添加数据源完成。

3.通过Connector/NET组件连接:
Step 1.启动Visual Studio
Step 2.新建http://ASP.NET Web 应用程序 (.NET Framework)
✦因为之前我安装的Connector/NET 8.0.22,它有一些命名空间下的方法需要在.NET Framework 4.5.2及以上版本才能正常使用。所以这里为了方便演示我使用了更新的.NET Framework 4.7.2

Step 3.修改Web.config文件
在Web.config文件下添加形如以下内容的配置代码段到<configuration></configuration>之间
<connectionStrings>
<add name=&#34;name&#34; connectionString=&#34;server=servername;user id=username;password=password;persistsecurityinfo=True;database=database&#34;
providerName=&#34;MySql.Data.MySqlClient&#34; />
</connectionStrings>
需要知道的内容:
- add name里填这段内容的名称
- server填写要连接的服务器
- user id填写连接MySQL数据库所使用的用户ID
- password填写用户ID对应的MySQL密码
- persistsecurityinfo表示是否保存安全信息,True是保存,False是不保存
- database里填写要连接的数据库
- providerName表示要加载的数据库驱动,这里连的是MySQL,所以填MySql.Data.MySqlClient
那么这里我演示以root用户连接本地MySQL下的test数据库为例,它的配置代码段如下:
<connectionStrings>
<add name=&#34;testconn&#34; connectionString=&#34;server=localhost;user id=root;password=123456;persistsecurityinfo=True;database=test&#34;
providerName=&#34;MySql.Data.MySqlClient&#34; />
</connectionStrings>将其添加到Web.config文件中,大概是这个样子:
<?xml version=&#34;1.0&#34; encoding=&#34;utf-8&#34;?>
<!--
有关如何配置 ASP.NET 应用程序的详细信息,请访问
https://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<connectionStrings>
<add name=&#34;testconn&#34; connectionString=&#34;server=localhost;user id=root;password=123456;persistsecurityinfo=True;database=test&#34;
providerName=&#34;MySql.Data.MySqlClient&#34; />
</connectionStrings>
<system.web>
<compilation debug=&#34;true&#34; targetFramework=&#34;4.7.2&#34; />
<httpRuntime targetFramework=&#34;4.7.2&#34; />
</system.web>
<system.codedom>
<compilers>
<compiler language=&#34;c#;cs;csharp&#34; extension=&#34;.cs&#34; type=&#34;Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35&#34; warningLevel=&#34;4&#34; compilerOptions=&#34;/langversion:default /nowarn:1659;1699;1701&#34; />
<compiler language=&#34;vb;vbs;visualbasic;vbscript&#34; extension=&#34;.vb&#34; type=&#34;Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35&#34; warningLevel=&#34;4&#34; compilerOptions=&#34;/langversion:default /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+&#34; />
</compilers>
</system.codedom>
</configuration>然后保存
Step 4.添加MySQL.Data.DLL模块
Step 4.1.右键单击引用,选择添加引用

Step 4.2.单击选择红框中的浏览

Step 4.3.单击选择红框中的浏览添加MySQL.Data.DLL

✦因为之前安装Conncteor/NET的时候选择了Typical安装,它默认的安装路径应该是:C:\Program Files (x86)\MySQL\MySQL Connector Net 8.0.23\Assemblies\v4.5.2
(版本号可能有差异)
单击添加完成添加,单击确定保存

Step 5.编辑Web窗体的CS源代码
这里以WebForm1.aspx为例,为了简便地观察效果,我们先添加一个GridView,但是不选择数据源

Step 5.1.打开WebForm1.aspx.cs,在文件首部添加以下代码:
using System.Configuration;
using MySql.Data.MySqlClient;
注册访问MySQL数据库相关的命名空间
✦为了调试时直接显示结果,下面所有内容均会写到Page_Load方法下面
protected void Page_Load(object sender, EventArgs e)
{
String conn = ConfigurationManager.ConnectionStrings[&#34;testconn&#34;].ToString();
//获取Web.config文件里关于数据库连接的字符串
MySqlConnection mycon = new MySqlConnection(conn);
//新建连接实例,对数据库进行连接
mycon.Open();//打开数据库
MySqlCommand mycmd = new MySqlCommand(&#34;select * from studentinfo;&#34;, mycon);
//实例化MySqlCommand类并将select * from studentinfo;语句传递到连接的数据库中
MySqlDataReader myread = mycmd.ExecuteReader();
//对刚才执行查询指令后的结果进行读取
GridView1.DataSource = myread;
//将读取结果传递到GridView的数据源
GridView1.DataBind();
//对GridView的数据进行绑定
mycon.Close();
//关闭数据库连接
}
这里只简单演示SELECT查询语句,完整代码如下:
using System;
using System.Configuration;
using MySql.Data.MySqlClient;
namespace WebApplication7
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
String conn = ConfigurationManager.ConnectionStrings[&#34;testconn&#34;].ToString();
MySqlConnection mycon = new MySqlConnection(conn);
mycon.Open();
MySqlCommand mycmd = new MySqlCommand(&#34;select * from studentinfo;&#34;, mycon);
MySqlDataReader myread = mycmd.ExecuteReader();
GridView1.DataSource = myread;
GridView1.DataBind();
mycon.Close();
}
}
}
它的查询结果如下:

这样说明连接成功。更多关于MySQL的操作可以参考文档:
中文文档是MySQL 5.1时期的翻译版,可能略有不同 |
|