如何在.NET中使用MySQL数据库

如何在.NET中使用MySQL数据库,第1张

在 NET中一直使用Sql Server做数据库 前几天学习通过JDBC使用Java连接MySql数据库 我就想 NET是否同样可以使用MySql数据库呢?答案是肯定的 方法也很简单 在这里我使用C#作为编程语言 将自己整理出来的方法同大家一起分享

欲在 NET中使用MySql数据库 其步骤是 下载MySql驱动包 引用驱动包中已经编译好的MySql类组件 编写代码

步骤一 下载MySql驱动包

在我写篇文章的时候 最新的驱动包是 支持Visual Studio 官方下载地址是

步骤二 引入组件

下载的文件是一个压缩文件 将其解压缩到本地磁盘 找到bin文件夹中的MySql Data dll文件 这个就是我们要引用的组件 通过Visual Studio将其引用到你的项目中

1、资源:Mysql-5.6.24-win32、VS2013、mysql-connector-odbc-5.3.6-win32;

2、ODBC下载:在Mysql官网可下载Mysql ODBC,注意,什么版本的mysql配什么版本的ODBC,很重要!

下载后双击安装。

3、创建ODBC数据源

打开  控制面板->系统和安全->管理工具->ODBC数据源(32位)

因为我安装的mysql数据库是32位的,所以选择32位的数据源:

d出数据源管理程序(32位):

选择用户DNS,点击右边的“添加”按钮,选择MySQL ODBC 5.3 ANSI Driver->完成:

d出界面如图所示:Data Source Name可自己随意填写;TCP/IP Server如果是本机数据库的话一般填localhost;Port端口号不要改;User填root,Password填你登陆自己的mysql时所用的密码;Database选择一个你已经建好的mysql数据库,比如我选择数据库XYDdata;最后点击Text测试,d出连接成功的对话框(这一步如果出错,没有d出连接成功的对话框,那么极有可能是因为下载的Mysql ODBC与Mysql的版本不相匹配)。

选择系统DNS,点击添加,步骤、填法同上,不再细讲。

完成后,如图所示,用户DNS和系统DNS都添加了名为Lizer的数据源:

ODBC数据源创建成功。

4、打开VS2013,新建一个ASP.net应用程序:

5、添加一个Web窗体WebForm1.aspx:

6、使用ASP数据绑定控件:

以GridView控件为例:

GridView以表的形式显示数据,并提供对列进行排序、分页、翻阅数据及编辑或删除单个记录的功能。

使用示例:

视图->工具箱->数据,双击GridView将空间拖到页面中:

在“设计”中点击右边的小箭头,d出GridView任务,选择数据源选择“新建数据源”:

d出:

选择“SQL数据库”,点击“新建连接”:

如下图所示,数据源选择ODBC数据源;数据源选择我们前面新建的数据源”Lizer";登陆信息中用户名密码即为我们在创建数据源“Lizer"时填写的User和Password:

点击确定,再点击下一步:

输入SQL语句 select * from Book(Book是数据库中的一个表):

点击 下一步->完成。

软件会为我们自动生成代码:

行程序,表Book中的数据以表格的形式呈现出来:

最近在写一个.net项目,用的是mysql数据库。因为平时基本不怎么用mysql开发.net项目,于是上网百度了下关于.net引用mysql数据库的案例。

基本就是下载mysql数据库的驱动然后dll引入(具体网上有)

我按照网上的方法引入了dll,MySql.Data和MySQLDriverCS~~然后引用命名空间的时候用的是MySQLDriverCS。在配置文件中写连接字符串的时候,我是这么写的

<add name="connectionString" connectionString="server=192.168.1.247database=prodmngUser ID=rootPassword=rootport=3306" providerName="MySql.Data.MySqlClient" />

看起来应该是没错,但是在运行的时候老是报错,首先是报root账号的密码错误,后来,我把密码改成了本地数据库的root账号的密码,结果能连上数据库,而且是本地的数据库!!这说明我配置中写的sever的ip根本没起作用!后来我在网上有找了很久,找到了问题所在!代码如下:

<add name="connectionString" connectionString="Location=192.168.1.247Data Source=prodmngUser ID=rootPassword=rootport=3306" providerName="MySql.Data.MySqlClient" />

我把server改成location ,database改成Data Source 后,就能连上247服务器的数据库了!!

后来,在网上发现有些人是用MySql.Data.MySqlClient这个库的,然后我就试了下这个库。这个哭和之前那个MySQLDriverCS不同的地方在于里面的类名中的sql字母大小写不一样,比如MySql.Data.MySqlClient中的MySqlConnection在MySQLDriverCS中就是MySQLConnection。在引用这个库之后,我发现我之前改过的连接字符串报错了!不存在location这个属性,于是我把连接字符串改成之前那样:

<add name="connectionString" connectionString="server=192.168.1.247database=prodmngUser ID=rootPassword=rootport=3306" providerName="MySql.Data.MySqlClient" />

然后运行程序,没有问题,能访问数据库!


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/6158272.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存