用C#连接远程mysql数据库_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 用C#连接远程mysql数据库

用C#连接远程mysql数据库

 2013/11/9 12:56:02  Jingle Guo  博客园  我要评论(0)
  • 摘要:实践环境:远程mysql服务器:虚拟机,WINXP系统mysql:V5.1.50phpmyadmin:3.3.7C#环境,WIN7,VS2008专业版一.开放mysql数据库远程连接权限下面内容只是在进行远程连接时需要,如果你的代码和mysql数据库在一台机器上,则不需要下面两步。1.开放防火墙端口在WINXP系统中点控制面板->安全中心->windows防火墙->例外->添加端口将3306端口号加入例外的端口,这样就打开了mysql的默认端口。2
  • 标签:C# 数据库 数据 连接 SQL MySQL数据库 MySQL 远程

实践环境:

远程mysql服务器:虚拟机,WINXP系统

mysql:V5.1.50

phpmyadmin:3.3.7

C#环境,WIN7,VS2008专业版

一.开放mysql数据库远程连接权限

下面内容只是在进行远程连接时需要,如果你的代码和mysql数据库在一台机器上,则不需要下面两步。

1.开放防火墙端口

在WINXP系统中点控制面板->安全中心->windows防火墙->例外->添加端口

将3306端口号加入例外的端口,这样就打开了mysql的默认端口。

2.授予用户远程访问权限

在phpmyadmin里选择权限->编辑用户权限->主机

从本地改为任意主机

 

二.搭建C#环境

mysql官网提供了访问mysql的支持库,可到http://dev.mysql.com/downloads/connector/net/下载

或者是直接百度一下,可以搜到很多。

将Mysql.Data.dll添加引用到你的项目,再using MySql.Data.MySqlClient;就能连接使用mysql了

 

三.数据库的基本操作

1.连接数据库

基本连接语句是:"Data Source=192.168.1.1;Password=root;User ID=root;Database=test;port=3306"

通过下面的调用进行连接

String mysqlStr = "Data Source=192.168.1.1;Password=root;User ID=root;Database=test;port=3306";
MySqlConnection connection = new MySqlConnection(mysqlStr);
connection.Open();

连接语句的更多参数,参见http://dev.mysql.com/doc/connector-net/en/connector-net-connection-options.html

 

2.取数据

需要注意的是连接mysql时的字符集要和mysql的字符集一致,否则取不到数据

            MySqlCommand mySqlCommand = new MySqlCommand(sql, connection);
            MySqlDataReader reader = mySqlCommand.ExecuteReader();
            try
            {
                while (reader.Read())
                {
                    if (reader.HasRows)
                    {
                        
                        //数据访问
                    }
                }
            }
            catch (Exception)
            {

            }
            finally
            {
                reader.Close();
            }

 

3.执行命令

默认的可以将多行命令一起执行,如果想要禁止使用多行命令,则在连接mysql时修改class="literal">AllowBatch参数为false,添加,更新,删除等不需要取数据的操作都可以用下面的命令。

            MySqlCommand mySqlCommand = new MySqlCommand(sql, connection);
            try
            {
                mySqlCommand.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

 

4.完成连接

当连接完成后别忘了关闭连接

connection.Close();

 

发表评论
用户名: 匿名