先去mysql的网站下载MySql.Data.msi(连.net用)mysql-connector-odbc-5.1.1-win32.msi(连ODBC用)
引用命名空间,可以在项目中引用MySql.Data;
代码中引用:
using
MySql.Data;
using
MySql.Data.MySqlClient;
//
.net
using
System.Data.Odbc;
//
odbc
在一个winform窗体上放了一个datagridview,代码如下:
//
.net方式
string
sConnString
=
"
Server=127.0.0.1;Port=3306;Database=db;Uid=user;Pwd=123;
"
;
MySqlConnection myConn
=
new
MySqlConnection(sConnString);
MySqlDataAdapter myAdapter
=
new
MySqlDataAdapter(
"
SELECT * FROM table n;
"
,myConn);
myConn.Open();
DataSet ds
=
new
DataSet();
myAdapter.Fill(ds);
dataGridView1.DataSource
=
ds.Tables[
0
].DefaultView;
//
odbc
string
sConnString
=
"
Driver={MySQL ODBC 5.1 Driver};Server=127.0.0.1;Database=db; User=user;Password=123;Option=3;
"
;
OdbcConnection oConn
=
new
OdbcConnection(sConnString);
OdbcDataAdapter oAdapter
=
new
OdbcDataAdapter(
"
SELECT * FROM table n;
"
, oConn);
oConn.Open();
DataSet ds
=
new
DataSet();
oAdapter.Fill(ds);
dataGridView1.DataSource
=
ds.Tables[
0
].DefaultView;
另附:MySQL ODBC 连接数据库option的含义
· MySQL · ODBC o 本地数据库:"Driver={mySQL};Server=mySrvName;Option=16834;Database=mydatabase;" Sever参数也可以使用localhost作为其值o 远程数据库:"Driver={mySQL};Server=data.domain.com;Port=3306;Option=131072;Stmt=;Database=my-database;Uid=username;Pwd=password;" Option值 取值的含义1 客户端不能处理MyODBC返回一列真实宽度的情况2 客户端不能处理MySQL返回影响的行的真实值的情况如果设置此标志,MySQL返回’found rows’。 MySQL 3.21.14或更新版才能生效4 在c:/myodbc.log中生成一个调试日志。这与在`AUTOEXEC.BAT'中的设置MYSQL_DEBUG=d:t:O,c::/myodbc.log相同8 对于结果和参数不设置任何包限制16 不使驱动器弹出问题32 使用或去除动态游标支持。这在MyODBC 2.50中是不允许的64 在'database.table.column'中忽略数据库名字的使用128 强制使用ODBC管理器游标256 去除扩展取值(fetch)的使用512 充满char字段满长度1024 SQLDescribeCol()函数返回完全满足条件的列名2048 使用压缩的服务器/客户端协议4096 告诉服务器在函数后和'('前忽略空格 (PowerBuilder需要)。这将产生所有函数名关键词8192 使用命名管道连接运行在NT上的Mysqld服务器16384 将LONGLONG列改为INTl列(有些应用不能处理LONGLONG列)32768 从SQLTables中返回’user’作为Table_qualifier和Table_owner 66536 从客户端读参数,从`my.cnf'读ODBC群131072 增加一些额外的安全性检查如果你需要许多选项,你应该把以上标志相加。