C# web访问mysql数据库-整理归纳总结

基本对比

使用方式 使用场合 优缺点 是否需要安装 需要的dll网址
引用方式 程序内引用 程序初期确定使用MySql,前期添加引用 大多数情况下使用在类文件内,多数使用于aspx,ashx等带有后置代码的类文件中

可以安装,也可以直接引用dll 多数情况下直接引用即可

Connector/Net 6.7.4

web.config引用 后期维护接口发现程序内需要使用,这时不方便更改原有程序引用 多数时候使用于没有后置代码的aspx、ashx等文件上
ODBC方式 配置系统内数据源 程序创建初期,后期均可以使用

适用于页面文件(aspx、ashx),也适用于带有后置代码的类文件(aspx.cs、ashx.cs) 这样程序调用的时候多数要使用ado.net的odbc对象

必须安装

Connector/ODBC

程序内直接引用数据源 程序创建初期,后期均可以使用

 

一、使用引用方式

  1.1 程序内引用

    使用前提:(使用一种即可)
        
1. 在web程序中,引用—》添加引用—》程序集—》扩展下,前提是安装了mysql-connector-net
        2. 手工下载MySql.Data.dll,然后添加引用

    

    注意:这种方式一般使用于存有“代码后置”的页面文件aspx(aspx.cs)、ashx(ashx.cs)

    使用:
       1.添加引用:using MySql.Data. MySqlClient; 
       2.现在页面就可以使用了

       测试代码:

 1             System.Data.DataSet ds = new System.Data.DataSet();
 2             string connStr = @"Database=testss;Data Source=172.168.0.234;User Id=root;Password=shinevod";
 3             string sqlList = "select * from sms_outbox";
 4             try
 5             {
 6                 using (MySql.Data.MySqlClient.MySqlDataAdapter dataAapter = new MySql.Data.MySqlClient.MySqlDataAdapter(sqlList, connStr))
 7                 {
 8                     dataAapter.Fill(ds);
 9                     Response.Write(ds.GetXml());
10                 }
11             }
12             catch
13             { }
View Code

  1.2 web.config方式引用

    使用前提:(使用一种即可)
        1. 在web程序中,引用—》添加引用—》程序集—》扩展下,前提是安装了mysql-connector-net
        2. 手工下载MySql.Data.dll,然后添加引用(这种情况一般选用这个比较方便,不需要安装)

    注意:如果已经完成的项目突然有数据库mysql接口的需求,又不能在服务器上随便安装程序(主要是怕影响其他软件),一般使用于代码没有后置的网页文件如aspxashx

    使用:

      1. 手工下载MySql.Data.dll,放置网站bin下(如果没有安装mysql-connector-net)
      2.在网站的web.config中添加节点(版本号根据自己使用的适当变换)
        

1 <system.web>
2     <compilation debug="true" targetFramework="4.0">
3         <assemblies>
4             <add assembly="MySql.Data,Version=6.6.4.0,Culture=neutral,PublicKeyToken=C5687FC88969C44D"/>
5         </assemblies>
6     </compilation>
7 </system.web>
View Code

      3.这时网页上可以使用了

 1             System.Data.DataSet ds = new System.Data.DataSet();
 2             string connStr = @"Database=testss;Data Source=172.168.0.234;User Id=root;Password=shinevod";
 3             string sqlList = "select * from sms_outbox";
 4             try
 5             {
 6                 using (MySql.Data.MySqlClient.MySqlDataAdapter dataAapter = new MySql.Data.MySqlClient.MySqlDataAdapter(sqlList, connStr))
 7                 {
 8                     dataAapter.Fill(ds);
 9                     Response.Write(ds.GetXml());
10                 }
11             }
12             catch
13             { }
View Code

     

二、使用ODBC方式

  2.1 配置系统数据源

    使用前提:下载: http://dev.mysql.com/downloads/connector/odbc/,之后进行安装

    注意:下载时候使用的版本号,以及操作系统(主要指windows)位数

    使用:
      1.添加系统数据源
        
win7(其他的系统差不多):“控制面板”—》“管理工具”—》“数据源(ODBC)”—》用户DSN—》添加
        

      2. 程序调用

 1             System.Data.DataSet ds = new System.Data.DataSet();
 2             string str = @"DSN=mysqltest";//设置Connection属性,使用MySql DSN
 3             string sqlList = "select * from sms_outbox";
 4             try
 5             {
 6                 using (System.Data.Odbc.OdbcDataAdapter dataAdapter = new System.Data.Odbc.OdbcDataAdapter(sqlList, str))
 7                 {
 8                     dataAdapter.Fill(ds);
 9                     Response.Write(ds.GetXml());
10                 }
11             }
12             catch (Exception ex)
13             { Response.Write(ex.ToString()); } 
View Code

 

   2.2 程序内调用驱动 

    使用前提:下载: http://dev.mysql.com/downloads/connector/odbc/,之后进行安装

    注意:下载时候使用的版本号,以及操作系统(主要指windows)位数

    使用:

      1.安装odbc成功后,程序直接调用

 1             System.Data.DataSet ds = new System.Data.DataSet();
 2             string strCon = @"Driver=MySql ODBC 5.2 Unicode Driver;Server=172.168.0.234;Database=testss;UID=root;pwd=shinevod";
 3             string sqlList1 = "select * from sms_outbox";
 4             try
 5             {
 6                 using (System.Data.Odbc.OdbcDataAdapter dataAdapter = new System.Data.Odbc.OdbcDataAdapter(sqlList1, strCon))
 7                 {
 8                     dataAdapter.Fill(ds);
 9                     Response.Write(ds.GetXml());
10                 }
11             }
12             catch (Exception ex)
13             { Response.Write(ex.ToString()); } 
View Code

 

posted @ 2013-07-05 10:15  bjlhx15  阅读(2236)  评论(1编辑  收藏  举报
Copyright ©2011~2020 JD-李宏旭