xugang

从2007年开始,记录一个DotNET程序员的成长

 

DotNET使用CoreLab推出的MYSQL访问组件示例(学习)


DotNET连接MYSQL数据库有三种方法:
方法一:
使用MYSQL推出的MySQL Connector/Net is an ADO.NET driver for MySQL
该组件为MYSQL为ADO.NET访问MYSQL数据库设计的.NET访问组件。
安装完成该组件后,引用命名空间MySql.Data.MySqlClient;
使用命令行编译时:csc /r:MySql.Data.dll test.cs
方法二:
通过ODBC访问MYSQL数据库
访问前要先下载两个组件:odbc.net和MYSQL的ODBC驱动(MySQL Connector/ODBC (MyODBC) driver)目前为3.51版,安装完成后,即可通过ODBC访问MYSQL数据库。
方法三:
使用CoreLab推出的MYSQL访问组件,面向.NET
安装完成后,引用命名空间:CoreLab.MySql;
使用命令编译时:csc /r:CoreLab.MySql.dll test.cs

以下为访问MYSQL数据库实例
编译指令:csc /r:CoreLab.MySql.dll /r:MySql.Data.dll test.cs
using System;
using System.Net;
using System.Text;
using CoreLab.MySql;
using System.Data.Odbc;
using MySql.Data.MySqlClient;

class ConnectMySql
{
  
public void Connect_CoreLab()
  {
    
string constr = "User Id=root;Host=localhost;Database=qing;password=qing";
    MySqlConnection mycn 
= new MySqlConnection(constr);
    mycn.Open();
    MySqlCommand mycm 
= new MySqlCommand("select * from shop",mycn);
    MySqlDataReader msdr 
= mycm.ExecuteReader();
    
while(msdr.Read())
    {
      
if (msdr.HasRows)
      {
        Console.WriteLine(msdr.GetString(
0));
      }
    }
    msdr.Close();
    mycn.Close();
  }

  
public void Connect_Odbc()
  {
    
//string MyConString ="DSN=MySQL;UID=root;PWD=qing"; 
     string MyConString = "DRIVER={MySQL ODBC 3.51 Driver};" + 
                                  
"SERVER=localhost;" +
                                  
"DATABASE=test;" +
                                  
"UID=root;" +
                                  
"PASSWORD=qing;" +
                                  
"OPTION=3";
    OdbcConnection MyConn 
= new OdbcConnection(MyConString);
    MyConn.Open();
    OdbcCommand mycm 
= new OdbcCommand("select * from hello",MyConn);
    OdbcDataReader msdr 
= mycm.ExecuteReader();
    
while(msdr.Read())
    {
      
if (msdr.HasRows)
      {
        Console.WriteLine(msdr.GetString(
0));
      }
    }
    msdr.Close();
    MyConn.Close();
  }

  
public void Connect_Net()
  {
    
string myConnectionString = "Database=test;Data Source=localhost;User Id=root;Password=qing";
    MySqlConnection mycn 
= new MySqlConnection(myConnectionString);
    mycn.Open();
    MySqlCommand mycm 
= new MySqlCommand("select * from hello",mycn);
    MySqlDataReader msdr 
= mycm.ExecuteReader();
    
while(msdr.Read())
    {
      
if (msdr.HasRows)
      {
        Console.WriteLine(msdr.GetString(
0));
      }
    }
    msdr.Close();
    mycn.Close();
  }

  
public static void Main()
  {
    ConnectMySql ms 
= new ConnectMySql();
    ms.Connect_CoreLab();
    ms.Connect_Odbc();
    Connect_Net();
  }
}


附:使用corelab的 oradirect.net data provider 也能连接并访问oracle数据库。不过,corelab的oradirect.net data provider 连接组件不是免费的,下载的demo版只能读取前8列。

来源:http://school.ogdev.net/ArticleShow.asp?id=3550&categoryid=19

posted on 2008-02-23 21:42 钢钢 阅读(374) 评论(7)  编辑 收藏 所属分类: MySQL

评论

#1楼 [楼主] 2008-02-23 21:58 钢钢      

还有一个类似MySQL的数据库,免费并且开源,它叫PostgreSQL ,值得大家学习。
官方网站:http://www.postgresql.org

  回复  引用  查看    

#2楼  2008-03-29 15:09 老是弄错1 [未注册用户]

@钢钢
oradirect.net data provider 不知是否有破解或是注册码?如果有,能否给我一份。谢谢
我的QQ:75799614   回复  引用    

#3楼 [楼主] 2008-03-30 00:00 钢钢      

不好意思,我只是很早前试用了一下demo版   回复  引用  查看    

#4楼  2008-04-21 11:26 nicye      

http://www.mysql.com/search/?q=MySql.Data.dll&charset=   回复  引用  查看    

#5楼 [楼主] 2008-06-02 10:17 钢钢      

透视MySQL数据库之更新语句
http://www.cnblogs.com/nokiaguy/archive/2008/06/01/1211701.html

  回复  引用  查看    

#6楼 [楼主] 2008-06-08 13:16 钢钢      

MySQL数据库中的安全解决方案
http://www.cnblogs.com/nokiaguy/archive/2008/06/07/1215678.html

  回复  引用  查看    

#7楼 [楼主] 2008-07-11 17:15 钢钢      

提高MySQL 数据库性能的思路
http://www.cnblogs.com/dreamof/archive/2008/07/11/1240549.html   回复  引用  查看    


标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-02-23 22:05 编辑过


相关链接:
 


导航

统计

公告


穷则独善其身,达则兼济天下!



与我在线交流

在线词典


与我联系

搜索

 

常用链接

留言簿(3)

我参与的团队

随笔分类(121)

随笔档案(163)

文章分类(26)

收藏夹(197)

Blogs

Tools

Websites

积分与排名

最新评论

阅读排行榜

评论排行榜