C#使用SQL DataAdapter數(shù)據(jù)適配代碼實(shí)例
數(shù)據(jù)適配
DataAdapter 對(duì)象是DataSet 和數(shù)據(jù)源之間的橋梁,可以建立并初始化數(shù)據(jù)表(即DataTable),對(duì)數(shù)據(jù)源執(zhí)行SQL指令。與DataSet 對(duì)象結(jié)合,提供DataSet對(duì)象存取數(shù)據(jù)源執(zhí)行SQL指令,與Dataset對(duì)象結(jié)合,提供Dataset對(duì)象存取數(shù)據(jù),可視為Data對(duì)象操作核心。
在使用DataAdapter對(duì)象是,只需要設(shè)置SQL命令和數(shù)據(jù)庫(kù)連接兩個(gè)參數(shù),就可以銅火鍋Fill方法把查詢(xún)結(jié)果放置在一個(gè)DataSet對(duì)象中;
實(shí)例 :
填充DataSet數(shù)據(jù)集:利用DataAdapter 的Fill方法實(shí)現(xiàn) 前提:有一個(gè)數(shù)據(jù)庫(kù)MySql ,其下有個(gè)數(shù)據(jù)表mytable01,表中有數(shù)據(jù)
using System;
using System.Data.SqlClient; //引用命名空間
using System.Data;
namespace DataAdapter
{
class Program
{
static void Main(string[] args)
{
//連接數(shù)據(jù)庫(kù)
string constr = "Server=. ;user=sa;pwd=sa;database=MySql";
SqlConnection mycon = new SqlConnection(constr);
try
{
mycon.Open();
string sql = "selecr * from mytable01";
SqlDataAdapter myda = new SqlDataAdapter(sql, mycon);
DataSet myds = new DataSet();
myda.Fill(myds,"mytable01");
Console.WriteLine("填充成功");
OutValues(myds);
Console.Read();
}
catch(Exception ex)
{
Console.WriteLine(ex.Message.ToString());
}
finally
{
mycon.Close();
}
}
public static void OutValues(DataSet ds)
{
foreach (DataTable dt in ds.Tables)
{
Console.WriteLine("表名"+dt.TableName);
foreach (DataRow row in dt.Rows)
{
foreach (DataColumn col in dt.Columns)
{
Console.Write(row[col] + "\t");
}
Console.WriteLine();
}
}
}
}
}
DataAdapter 對(duì)象可以用于執(zhí)行數(shù)據(jù)庫(kù)的命令操作,含有四個(gè)不同的執(zhí)行操作命令,分別如下:
- SelectCommand: 用來(lái)選取數(shù)據(jù)源中的記錄
- InsertCommand : 用來(lái)向數(shù)據(jù)源中新插入一條記錄
- UpdateCommand:用來(lái)更新數(shù)據(jù)源的數(shù)據(jù)
- DeleteCommand : 用來(lái)刪除數(shù)據(jù)源中的記錄
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
C#如何實(shí)現(xiàn)監(jiān)控手機(jī)屏幕(附源碼下載)
這篇文章主要介紹了C#如何實(shí)現(xiàn)監(jiān)控手機(jī)屏幕(附源碼下載),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
解決C#運(yùn)行程序修改數(shù)據(jù)后數(shù)據(jù)表不做更新的問(wèn)題
近日,在使用C#連接數(shù)據(jù)庫(kù)的時(shí)候,對(duì)數(shù)據(jù)庫(kù)中的表做更新后,在當(dāng)前啟動(dòng)項(xiàng)目中去顯示表數(shù)據(jù)時(shí)雖然會(huì)發(fā)生一個(gè)更新,但是在結(jié)束程序運(yùn)行后再去觀察數(shù)據(jù)表中的記錄時(shí)發(fā)現(xiàn)并沒(méi)有發(fā)生一個(gè)變化,所以本文給大家解決一下這個(gè)問(wèn)題,需要的朋友可以參考下2023-08-08
C#中使用Override和New關(guān)鍵字進(jìn)行版本控制
在?C#?中,override?和?new?關(guān)鍵字用于控制類(lèi)之間的成員方法的隱藏和重寫(xiě),理解它們之間的差異和使用場(chǎng)景對(duì)于設(shè)計(jì)靈活且易于維護(hù)的代碼至關(guān)重要,在這篇博客中,我們將詳細(xì)探討這兩個(gè)關(guān)鍵字的用法,并通過(guò)示例來(lái)說(shuō)明它們的實(shí)際應(yīng)用,需要的朋友可以參考下2024-10-10
解析美國(guó)東部時(shí)間與北京時(shí)間相互轉(zhuǎn)換的實(shí)現(xiàn)代碼
本篇文章是對(duì)美國(guó)東部時(shí)間與北京時(shí)間相互轉(zhuǎn)換的實(shí)現(xiàn)代碼進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05
c#實(shí)現(xiàn)獲取字符串陣列中元素最長(zhǎng)或最短的長(zhǎng)度
下面小編就為大家分享一篇c#實(shí)現(xiàn)獲取字符串陣列中元素最長(zhǎng)或最短的長(zhǎng)度方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助2017-12-12

