亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > ADO.NET中的五個主要對象的詳細介紹與應用

ADO.NET中的五個主要對象的詳細介紹與應用

熱門標簽:保山電話外呼管理系統怎么用 淘寶地圖標注如何做 外呼系統用員工身份證 蘇州銷售外呼系統預算 朝陽市地圖標注 東莞語音電銷機器人排名 太原外呼電銷機器人費用 使用智能電話機器人違法嗎 電話機器人廣告話術
首先看一個例子
配置文件
復制代碼 代碼如下:

configuration>
connectionStrings>
add name=connStr" connectionString="Data Source=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\SS.mdf;Integrated Security=true;User Instance=True"/>
/connectionStrings>
/configuration>

代碼
復制代碼 代碼如下:

string strconn = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString; //從配置文件中讀取連接字符串
using (SqlConnection conn = new SqlConnection(strconn)) //創建連接對象,出了using范圍,連接自動關閉,對象自動銷毀
{
conn.Open();//打開連接
using (SqlCommand cmd = conn.CreateCommand()) //創建命令對象
{
cmd.CommandText = "select * from T_Persons";//命令內容
DataSet dataset = new DataSet(); //創建一個數據集,相當于一個數據容器
SqlDataAdapter adapter = new SqlDataAdapter(cmd); //創建一個適配器
adapter.Fill(dataset); //將查詢結果填充到數據集中
DataTable datatable = dataset.Tables[0]; //將查詢到的一張表保存在DataTable對象中
for (int i = 0; i datatable.Rows.Count;i++ )//遍歷
{
DataRow row = datatable.Rows[i];//取得一行對象
string name=row["F_Name"].ToString();//取得該行對應列的值
MessageBox.Show(name);
}
}
}

對象解析
復制代碼 代碼如下:

Connection:
和數據庫交互,必須連接它。連接幫助指明數據庫服務器、數據庫名字、用戶名、密碼,和連接數據庫所需要的其它參數。Connection對象會被Command對象使用,這樣就能夠知道是在哪個數據源上面執行命令。
Command:
主要可以用來對數據庫發出一些指令,例如可以對數據庫下達查詢、新增、修改、刪除數據等指令,以及呼叫存在數據庫中的預存程序等。這個對象是架構在Connection 對象上,也就是Command 對象是透過連結到數據源。
DataAdapter:
主要是在數據源以及DataSet 之間執行數據傳輸的工作,它可以透過Command 對象下達命令后,并將取得的數據放入DataSet 對象中。這個對象是架構在Command對象上,并提供了許多配合DataSet 使用的功能。
DataSet:
這個對象可以視為一個暫存區(Cache),可以把從數據庫中所查詢到的數據保留起來,甚至可以將整個數據庫顯示出來。DataSet 的能力不只是可以儲存多個Table 而已,還可以透過DataAdapter對象取得一些例如主鍵等的數據表結構,并可以記錄數據表間的關聯。DataSet 對象可以說是ADO.NET 中重量級的對象,這個對象架構在DataAdapter對象上,本身不具備和數據源溝通的能力;也就是說我們是將DataAdapter對象當做DataSet 對象以及數據源間傳輸數據的橋梁。
DataReader:
當我們只需要循序的讀取數據而不需要其它操作時,可以使用DataReader 對象。DataReader對象只是一次一筆向下循序的讀取數據源中的數據,而且這些數據是只讀的,并不允許作其它的操作。因為DataReader 在讀取數據的時候限制了每次只讀取一筆,而且只能只讀,所以使用起來不但節省資源而且效率很好。使用DataReader 對象除了效率較好之外,因為不用把數據全部傳回,故可以降低網絡的負載。ADO.NET 使用Connection 對象來連接數據庫,使用Command 或DataAdapter對象來執行SQL語句,并將執行的結果返回給DataReader 或 DataAdapter ,然后再使用取得的DataReader 或DataAdapter 對象操作數據結果。

強類型 DataSet(ADO.NET中的重頭戲)
使用方法:在項目上右擊-添加-新建項-數據集,然后將表從服務器資源管理器拖放到DataSet中。注意拖放過程是自動根據表結構生成強類型DataSet等類,沒有把數據托過來,程序還是連得那個數據庫,自動將數據庫連接字符串寫在了配置文件中。

定義表的時候必須要有主鍵(表名:T_Persons)
復制代碼 代碼如下:

T_PersonsTableAdapter adapter = new T_PersonsTableAdapter();//首先生成一個適配器
DataSet演示.DataSet1.T_PersonsDataTable datatable = adapter.GetData();//講返回結果用T_PersonsDataTable類型接收
for (int i = 0; i datatable.Count;i++ )//遍歷表中的每一行
{
DataSet演示.DataSet1.T_PersonsRow row = datatable[i];//每一行放入一個T_PersonsRow中
MessageBox.Show("姓名是:"+row.F_Name+"年齡是:"+row.F_Age);//取出數據(像使用屬性一樣)
}

強類型DataSet的更新
復制代碼 代碼如下:

T_PersonsTableAdapter adapter = new T_PersonsTableAdapter();
DataSet演示.DataSet1.T_PersonsDataTable datatable = adapter.GetData();//取出查詢結果放入表中
DataSet演示.DataSet1.T_PersonsRow row = datatable[0];//取表的第一行
row.F_Name = "newName";//修改第一行數據的名字字段
int i = adapter.Update(datatable);
if (i > 0)
{
MessageBox.Show("修改成功");
}
else
{
MessageBox.Show("修改失敗");
}

數據庫中的表未增加字段:右鍵數據集→配置
增加字段:右鍵數據集→配置→查詢分析器
插入新行
復制代碼 代碼如下:

T_PersonsTableAdapter adapter = new T_PersonsTableAdapter();
int i = adapter.Insert("吉思靜", 22);
if (i > 0)
{
MessageBox.Show("插入成功");
}
else
{
MessageBox.Show("插入失敗");
}

空值處理
復制代碼 代碼如下:

if(row.IsF_NameNull())//判斷數據庫中的該字段對應的值是否為空(這是一個方法,直接調用)
{
MessageBox.Show("數據為空");
}

強類型DataSet添加自定義SQL語句
復制代碼 代碼如下:

右鍵數據集→添加→Query
查詢SQL語句
SELECT * FROM dbo.T_Persons
where F_Age>20
調用該方法:
T_PersonsTableAdapter adapter = new T_PersonsTableAdapter();
DataSet演示.DataSet1.T_PersonsDataTable datatable = adapter.GetDataOlder();
查詢SQL語句(帶參數)
SELECT * FROM dbo.T_Persons
where F_Age>@Age
調用該方法:
T_PersonsTableAdapter adapter = new T_PersonsTableAdapter();
DataSet演示.DataSet1.T_PersonsDataTable datatable = adapter.GetDataByAge(20);
刪除SQL語句(帶參數)
DELETE FROM T_Persons
WHERE (F_Name = @Name)
調用該方法:
T_PersonsTableAdapter adapter = new T_PersonsTableAdapter();
int i = adapter.DeleteByName("李正興");//成功刪除返回1否則返回0

優化強類型DataSet批量處理
(1)插入3000條數據未優化用時
復制代碼 代碼如下:

Stopwatch sw = new Stopwatch();
sw.Start();//打開時鐘
T_testTableAdapter adapter = new T_testTableAdapter();
for(int i=0;i3000;i++)//計算插入3000條數據的用時
{
adapter.Insert(i.ToString(), i);
}
sw.Stop();
MessageBox.Show(sw.Elapsed.ToString());

(2)插入3000條數據優化后用時
復制代碼 代碼如下:

Stopwatch sw = new Stopwatch();
sw.Start();//打開時鐘
T_testTableAdapter adapter = new T_testTableAdapter();
adapter.Connection.Open();//打開連接
for(int i=0;i3000;i++)//計算插入3000條數據的用時
{
adapter.Insert(i.ToString(), i);
}
adapter.Connection.Close();//關閉連接
sw.Stop();
MessageBox.Show(sw.Elapsed.ToString());
您可能感興趣的文章:
  • ADO.NET EF中的實體修改方法
  • ADO.NET 連接數據庫字符串小結(Oracle、SqlServer、Access、ODBC)
  • ADO.NET實體數據模型詳細介紹
  • ADO.Net 類型化DataSet的簡單介紹
  • ADO.NET之連接池技術的使用詳解
  • ASP.NET中實現把Json數據轉換為ADO.NET DataSet對象
  • ADO.NET編程之基礎知識
  • ADO.NET基礎知識匯總

標簽:運城 阿里 呼倫貝爾 克拉瑪依 綏化 西藏 洛陽 潛江

巨人網絡通訊聲明:本文標題《ADO.NET中的五個主要對象的詳細介紹與應用》,本文關鍵詞  ADO.NET,中的,五個,主要,對象,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ADO.NET中的五個主要對象的詳細介紹與應用》相關的同類信息!
  • 本頁收集關于ADO.NET中的五個主要對象的詳細介紹與應用的相關信息資訊供網民參考!
  • 推薦文章
    日日日夜夜操| 国产精品1024在线永久免费| 日韩字幕在线| 天天做人人爱夜夜爽2020| 一级片免费在线观看视频| 国产伦久视频免费观看 视频| 香蕉视频亚洲一级| 日韩女人做爰大片| 免费国产在线视频| 午夜欧美成人香蕉剧场| 可以免费看毛片的网站| 日韩在线观看视频免费| 国产一区二区精品久久91| 欧美电影免费| 欧美大片aaaa一级毛片| 成人免费观看视频| 久久久久久久久综合影视网| 日韩中文字幕一区| 国产综合成人观看在线| 黄色福利片| 欧美一级视频免费| 国产伦理精品| 午夜精品国产自在现线拍| 成人在激情在线视频| 黄色福利片| 久久99这里只有精品国产| 香蕉视频久久| 久久成人性色生活片| 欧美电影免费| 999久久66久6只有精品| 91麻豆tv| 久久99爰这里有精品国产| 国产韩国精品一区二区三区| 国产国产人免费视频成69堂| 免费毛片播放| 九九精品久久久久久久久| 精品在线免费播放| 欧美激情一区二区三区在线播放 | 九九热国产视频| 可以免费看污视频的网站| 免费国产一级特黄aa大片在线| 麻豆网站在线看| 精品国产一区二区三区国产馆| 麻豆系列 在线视频| 国产原创视频在线| 久久精品免视看国产明星| 精品在线观看一区| 国产一区二区精品久| 国产美女在线一区二区三区| 可以免费在线看黄的网站| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 可以免费看毛片的网站| 青青久久精品| 欧美另类videosbestsex久久 | 久久久成人网| 久久精品大片| 欧美激情在线精品video| 精品视频在线观看免费| 999精品影视在线观看| 高清一级做a爱过程不卡视频| 精品视频免费看| 国产一级强片在线观看| 亚欧乱色一区二区三区| 青青久久网| 高清一级毛片一本到免费观看| 精品国产亚洲一区二区三区| 亚洲wwwwww| 韩国三级香港三级日本三级| 尤物视频网站在线| 国产视频一区二区在线播放| 欧美日本国产| 国产伦精品一区二区三区无广告| 999久久久免费精品国产牛牛| 欧美激情一区二区三区在线播放| 午夜激情视频在线播放| 日韩男人天堂| a级黄色毛片免费播放视频| 99色视频在线| 四虎影视久久久免费| 精品视频一区二区三区免费| 日韩在线观看免费| 999精品影视在线观看| 久久成人综合网| 国产一区二区精品在线观看| 天天做人人爱夜夜爽2020毛片| 亚欧成人乱码一区二区| 成人免费观看的视频黄页| 91麻豆精品国产高清在线| 黄色福利片| 久久精品免视看国产成人2021| 欧美日本免费| 精品国产一区二区三区久久久狼| 精品视频在线观看一区二区三区| 日韩中文字幕一区二区不卡| 成人免费观看男女羞羞视频| 欧美激情一区二区三区在线播放 | 台湾毛片| 国产视频在线免费观看| 国产精品免费久久| 欧美日本二区| 欧美电影免费| 国产亚洲精品aaa大片| 久久精品免视看国产成人2021| 精品国产三级a∨在线观看| 九九久久99| 精品视频在线看| 黄视频网站免费看| 精品视频在线看| 成人a级高清视频在线观看| 欧美另类videosbestsex高清| 九九精品久久久久久久久| 99色视频| 一本高清在线| 欧美a级片免费看| 国产高清在线精品一区二区| 国产不卡福利| 免费的黄视频| 国产一区二区精品久久| 999精品视频在线| 香蕉视频久久| 国产国语在线播放视频| 黄视频网站在线观看| 久久99欧美| 久久成人性色生活片| 久久99这里只有精品国产| 国产美女在线一区二区三区| 国产视频一区二区在线播放| 毛片高清| 欧美电影免费看大全| 日韩av成人| 韩国毛片免费大片| 成人免费福利片在线观看| 亚洲天堂在线播放| 亚洲精品影院一区二区| 亚洲精品影院| 91麻豆tv| 日韩在线观看视频免费| 91麻豆精品国产高清在线| 欧美一区二区三区在线观看| 欧美激情一区二区三区视频 | 日本特黄一级| 日日爽天天| 精品视频在线看 | 国产伦久视频免费观看 视频| 天天色成人网| 天天色成人网| 亚洲精品影院| 精品国产香蕉在线播出| 精品视频免费在线| 国产一级生活片| 免费毛片基地| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 日韩中文字幕一区| 国产91精品一区| 一级女性全黄生活片免费| 精品久久久久久影院免费| 国产视频一区二区在线播放| 97视频免费在线观看| 尤物视频网站在线| 中文字幕97| 日韩欧美一二三区| 日韩专区亚洲综合久久| 国产一级生活片| 999精品视频在线| 四虎久久影院| 成人av在线播放| 国产一区精品| 黄视频网站在线免费观看| 亚欧乱色一区二区三区| 国产麻豆精品hdvideoss| 成人免费高清视频| 999精品在线| 99色视频在线| 日韩中文字幕在线观看视频| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 国产精品1024在线永久免费| 高清一级做a爱过程不卡视频| 日本久久久久久久 97久久精品一区二区三区 狠狠色噜噜狠狠狠狠97 日日干综合 五月天婷婷在线观看高清 九色福利视频 | 精品毛片视频| 成人a大片在线观看| 91麻豆精品国产自产在线| 美女免费精品视频在线观看| 美国一区二区三区| 日韩中文字幕一区| 深夜做爰性大片中文| 欧美爱爱网| 国产高清在线精品一区二区| 亚飞与亚基在线观看| 日韩专区第一页| 91麻豆爱豆果冻天美星空| 九九久久国产精品| 精品国产一级毛片| 日韩中文字幕一区| 久久精品大片| 久久成人性色生活片| 精品视频免费看| 国产视频一区二区在线观看| 国产网站在线| 欧美α片无限看在线观看免费| 97视频免费在线观看|