XuGang

记录一个程序员的成长

 

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   钢钢  阅读(2253)  评论(7编辑  收藏  举报

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架

导航

统计

点击右上角即可分享
微信分享提示