c# 怎样连接mysql数据库服务器地址_c#连接数据库之连接Mysql

本文介绍了三种方式在C#中连接MySQL数据库:通过ODBC、设置DSN和使用MySQL Connector Net。详细讲解了每种方式的步骤和连接字符串配置,包括服务器地址、端口、用户和密码等关键信息。
摘要由CSDN通过智能技术生成

通过不同的方式访问数据库,区别就在于连接数据库的字符串的不同,这是我这两天学习的总结

一,通过ODBC访问

1.安装Microsoft ODBC.net:我安装的是mysql-connector-odbc-5.2.2-win32.msi

2,代码中引入 using system.Data.Odbc;

3,连接字符串

string connation = "Driver={MySQL ODBC 5.2w Driver};"     //指定驱动程序,驱动程序名可以在ODBC数据源管理器中查看

+"server=localhost;"                              //指定数据库所在服务器

+"uid=root;"                                          //指定数据库用户

+"Pwd=XXXX;"                                      //密码

+"database=nc;"                                   //要访问的数据库名

+"port=3306;"                                       //开放的端口号

疑问:option是什么????

二,通过OBDC数据源,设定DSN来连接Mysql

通过这种方式连接数据库,可以达到通过更改DSN配置参数来更改程序使用的数据库,不必更改代码。但是不是这种程序是不是有缺陷?

配置DSN步骤

1,安装Microsoft ODBC.net,我安装的是mysql-connector-odbc-5.2.2-win32.msi(官网下载)

2,运行ODBC32,进入ODBC数据源管理器

3,在用户DSN中选择【添加】

4,找到驱动程序(MySQL ODBC 5.2w Driver),点击完成

5,配置参数

Data Source Name(数据源命名,随意吧):JamesDataBase

Despriction (数据源描述):可不填写

Tcp/Ip Server (服务器名):localhost/127.0.0.1

port(开放的端口):默认为3306

Name Pipe?????

user (用户):填写Mys中设置好的用户名,如root

Password(密码):相对应的密码

dataBase:选择数据库

Test:测试是否连接成功

DSN配置结束。

代码中:1,引入using system.data.Odbc

2,连接字符串 connation = "DSN=JamesDataBase"

三、通过MySQL Connector Net访问mysql数据库

首先安装MySQL Connector Net 6.0.2,然后在程序中应用安装程序中的MySql.Data.dll文件

1,在程序引用中引入MySQL.Data

2,在代码中引入using MySQL.Data.MySqlClient;

3,连接字符串为connaction="server=localhost;"

+"database=nc;"

+"uid=root;"

+"pwd=";

访问数据库内容(以查询nc数据库中informationtable表数据为例,使用ODBC访问)

string conn = "Driver={MySQL ODBC 5.2w Driver};"

+"server=localhost;"

+"uid=root;"

+"Pwd=;"

+"database=nc;"

+"port=3306";

//连接数据库字符串

OdbcConnation  myCn= new OdbcConnection(conn);   //连接数据库对象

string  comm = "select * from informationtable";   //操作数据库字符串

myCn.Open();                                          //打开连接

OdbcCommand  myCm = new OdbcCommand(comm,myCn);    //操作数据库命令对象

OdbcDataReader  myDr = myCm.ExecuteReader();   //读取数据库内容

while(myDr.Reader())

{

if(myDr.HasRows)

{

string[] str = new string[myDr.FieldCount];

for (int i = 0; i < odbcDr.FieldCount; i++)

{

str[i] = odbcDr.GetString(i);  //假如我们封装好了一个类,那么这些数据就可以存到一个List<>中

//这里获取每一行的列值,也可以通过GetString(“列名”)

}

}

myDr.Close();

myCn.Close();

//当然操作数据库还要注意处理异常,和关闭

}

其实我们如果通过MySQL.Data.MySqlClient进行访问数据库,只要将间接字符串做一下小小修改,将OdbcConnaction改成MySqlConnaction,将OdbcCommand改成MySqlCommand就可以了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值