- 时间:2020-12-16 05:34 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:浅析C# web访问mysql数据库-整理归纳总结
[b]基本对比
[/b]
| 使用方式 |
使用场合 |
优缺点 |
是否需要安装 |
需要的dll网址 |
| 引用方式 |
程序内引用 |
程序初期确定使用MySql,前期添加引用 |
大多数情况下使用在类文件内,多数使用于aspx,ashx等带有后置代码的类文件中 |
可以安装,也可以直接引用dll 多数情况下直接引用即可
|
[url=http://dev.mysql.com/downloads/connector/net/]Connector/Net 6.7.4[/url]
|
| web.config引用 |
后期维护接口发现程序内需要使用,这时不方便更改原有程序引用 |
多数时候使用于没有后置代码的aspx、ashx等文件上 |
| ODBC方式 |
配置系统内数据源 |
程序创建初期,后期均可以使用 |
适用于页面文件(aspx、ashx),也适用于带有后置代码的类文件(aspx.cs、ashx.cs) 这样程序调用的时候多数要使用ado.net的odbc对象
|
必须安装 |
[url=http://dev.mysql.com/downloads/connector/odbc/]Connector/ODBC[/url]
|
[b]
一、使用引用方式
1.1 程序内引用
[/b]使用前提:(使用一种即可)
1. 在web程序中,引用—》添加引用—》程序集—》扩展下,前提是安装了mysql-connector-net
2. 手工下载MySql.Data.dll,然后添加引用
注意:这种方式一般使用于存有“代码后置”的页面文件aspx(aspx.cs)、ashx(ashx.cs)
使用:
1.添加引用:using MySql.Data. MySqlClient;
2.现在页面就可以使用了
[b]测试代码:
[/b]
[url=http://dev.mysql.com/downloads/connector/odbc/]http://dev.mysql.com/downloads/connector/odbc/[/url],之后进行安装
注意:下载时候使用的版本号,以及操作系统(主要指windows)位数
使用:
[b]1.添加系统数据源
[/b]win7(其他的系统差不多):“控制面板”—》“管理工具”—》“数据源(ODBC)”—》用户DSN—》添加
[img]http://files.jb51.net/file_images/article/201307/2013071009420928.png[/img]
[b]2. 程序调用
[/b]
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()); }
[b]2.2 程序内调用驱动
[/b]使用前提:下载: http://dev.mysql.com/downloads/connector/odbc/,之后进行安装
注意:下载时候使用的版本号,以及操作系统(主要指windows)位数
使用:
[b]1.安装odbc成功后,程序直接调用
[/b]
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()); }