浅析C# web访问mysql数据库-整理归纳总结
基本对比
使用方式 | 使用场合 | 优缺点 | 是否需要安装 | 需要的dll网址 | |
引用方式 | 程序内引用 | 程序初期确定使用MySql,前期添加引用 | 大多数情况下使用在类文件内,多数使用于aspx,ashx等带有后置代码的类文件中 | 可以安装,也可以直接引用dll 多数情况下直接引用即可 | |
web.config引用 | 后期维护接口发现程序内需要使用,这时不方便更改原有程序引用 | 多数时候使用于没有后置代码的aspx、ashx等文件上 | |||
ODBC方式 | 配置系统内数据源 | 程序创建初期,后期均可以使用 |
适用于页面文件(aspx、ashx),也适用于带有后置代码的类文件(aspx.cs、ashx.cs) 这样程序调用的时候多数要使用ado.net的odbc对象 | 必须安装 |
一、使用引用方式
1.1 程序内引用
使用前提:(使用一种即可)
1. 在web程序中,引用—》添加引用—》程序集—》扩展下,前提是安装了mysql-connector-net
2. 手工下载MySql.Data.dll,然后添加引用
注意:这种方式一般使用于存有“代码后置”的页面文件aspx(aspx.cs)、ashx(ashx.cs)
使用:
1.添加引用:using MySql.Data. MySqlClient;
2.现在页面就可以使用了
测试代码:
代码如下:
System.Data.DataSet ds = new System.Data.DataSet();
string connStr = @"Database=testss;Data Source=172.168.0.234;User Id=root;Password=shinevod";
string sqlList = "select * from sms_outbox";
try
{
using (MySql.Data.MySqlClient.MySqlDataAdapter dataAapter = new MySql.Data.MySqlClient.MySqlDataAdapter(sqlList, connStr))
{
dataAapter.Fill(ds);
Response.Write(ds.GetXml());
}
}
catch
{ }
1.2 web.config方式引用
使用前提:(使用一种即可)
1. 在web程序中,引用—》添加引用—》程序集—》扩展下,前提是安装了mysql-connector-net
2. 手工下载MySql.Data.dll,然后添加引用(这种情况一般选用这个比较方便,不需要安装)
注意:如果已经完成的项目突然有数据库mysql接口的需求,又不能在服务器上随便安装程序(主要是怕影响其他软件),一般使用于代码没有后置的网页文件如aspx,ashx
使用:
1. 手工下载MySql.Data.dll,放置网站bin下(如果没有安装mysql-connector-net)
2.在网站的web.config中添加节点(版本号根据自己使用的适当变换)
代码如下:
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="MySql.Data,Version=6.6.4.0,Culture=neutral,PublicKeyToken=C5687FC88969C44D"/>
</assemblies>
</compilation>
</system.web>
System.Data.DataSet ds = new System.Data.DataSet();
string connStr = @"Database=testss;Data Source=172.168.0.234;User Id=root;Password=shinevod";
string sqlList = "select * from sms_outbox";
try
{
using (MySql.Data.MySqlClient.MySqlDataAdapter dataAapter = new MySql.Data.MySqlClient.MySqlDataAdapter(sqlList, connStr))
{
dataAapter.Fill(ds);
Response.Write(ds.GetXml());
}
}
catch
{ }
二、使用ODBC方式
2.1 配置系统数据源
使用前提:下载: http://dev.mysql.com/downloads/connector/odbc/,之后进行安装
注意:下载时候使用的版本号,以及操作系统(主要指windows)位数
使用:
1.添加系统数据源
win7(其他的系统差不多):“控制面板”—》“管理工具”—》“数据源(ODBC)”—》用户DSN—》添加
System.Data.DataSet ds = new System.Data.DataSet();
string str = @"DSN=mysqltest";//设置Connection属性,使用MySql DSN
string sqlList = "select * from sms_outbox";
try
{
using (System.Data.Odbc.OdbcDataAdapter dataAdapter = new System.Data.Odbc.OdbcDataAdapter(sqlList, str))
{
dataAdapter.Fill(ds);
Response.Write(ds.GetXml());
}
}
catch (Exception ex)
{ Response.Write(ex.ToString()); }
2.2 程序内调用驱动
使用前提:下载: http://dev.mysql.com/downloads/connector/odbc/,之后进行安装
注意:下载时候使用的版本号,以及操作系统(主要指windows)位数
使用:
1.安装odbc成功后,程序直接调用
代码如下:
System.Data.DataSet ds = new System.Data.DataSet();
string strCon = @"Driver=MySql ODBC 5.2 Unicode Driver;Server=172.168.0.234;Database=testss;UID=root;pwd=shinevod";
string sqlList1 = "select * from sms_outbox";
try
{
using (System.Data.Odbc.OdbcDataAdapter dataAdapter = new System.Data.Odbc.OdbcDataAdapter(sqlList1, strCon))
{
dataAdapter.Fill(ds);
Response.Write(ds.GetXml());
}
}
catch (Exception ex)
{ Response.Write(ex.ToString()); }