本篇文章是對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.現在頁面就可以使用了
測試代碼:
複製代碼 代碼如下:
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>
3.這時網頁上可以使用了
複製代碼 代碼如下:
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—》添加
2. 程式調用
複製代碼 代碼如下:
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()); }