欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP.NET连接MySql数据库的2个方法及示例

程序员文章站 2024-03-31 11:47:46
方法一: 使用mysql官方组件使用mysql推出的 mysql connector/net 组件, 该组件是mysql为ado.net访问mysql数据库设计的.net专...

方法一: 使用mysql官方组件
使用mysql推出的 mysql connector/net 组件, 该组件是mysql为ado.net访问mysql数据库设计的.net专用访问组件。完成该组件后,需要在项目中引用这个组件,也可以直接在配置文件的< assemblies>节点内添加下面的节点:

复制代码 代码如下:
<add assembly="mysql.data, version=5.1.5.0, culture=neutral, publickeytoken=c5687fc88969c44d"/>

之后在程序中引用命名空间mysql.data.mysqlclient,即可开始进行连接mysql数据库的操作了,示例如下:
复制代码 代码如下:
protected void mysqlcon()
 {
   //数据库连接字符串跟连接sql server没有区别
   string constr = "server=localhost;user id=root;password=root;database=test";

   //下面使用mysql connector/net提供的专用对象
   mysqlconnection mycon = new mysqlconnection(constr);
   mycon.open();
   mysqlcommand mycmd = new mysqlcommand("select * from users", mycon);
  mysqldatareader myreader = mycmd.executereader();
  while (myreader.read())
  {
      if (myreader.hasrows)
      {
    response.write(myreader.getstring("email") + "<br/>");
      }
  }
  myreader.close();
  mycon.close();

}


方法二: 使用odbc.net
一般来说, odbc.net 的dataprovider是标准的.net框架(1.1及以上的版本)的一部分,所以会和后者一起自动安装好。 一旦确认odbc.net安装完毕,你就需要下载用于mysql的odbc驱动程序:mysql connector/odbc ,目前最新版本是3.51。安装完毕后就可以使用odbc.net连接mysql数据库了,首先需要在程序中引入system.data.odbc命名空间,具体的示例如下:
复制代码 代码如下:
public void connect_odbc()
   {
     //需要事先创建mysql odbc dsn.
     string odbcstring = "dsn=mysql;";

     //string odbcstring = "driver={mysql odbc 3.51 driver};" +
     //     "server=localhost;" +
     //     "port=3306;" +  //连接本地数据库时可省略此项设置
     //     "database=test;" +
    //     "uid=root;" +
    //     "password=root;" +
    //     "option=3";

    odbcconnection odbcconn = new odbcconnection(odbcstring);
    odbcconn.open();
    odbccommand odbccmd = new odbccommand("select * from users", odbcconn);
    odbcdatareader myreader = odbccmd.executereader();
    while (myreader.read())
    {
      if (myreader.hasrows)
      {    
        response.write(myreader.getstring(0) + "<br/>");
      }
    }
    myreader.close();
    odbcconn.close();
  }