.Net MySql

来源:互联网 发布:怎么防止网络攻击 编辑:程序博客网 时间:2024/06/06 15:52

先去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 增加一些额外的安全性检查
如果你需要许多选项,你应该把以上标志相加。