亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

當年學習ADO.NET的筆記

2024-07-10 13:24:03
字體:
來源:轉載
供稿:網友
那些年我還在學ADO.NET
那些年學習了ASP.NET后又開始學習ASP.NET的新知識,ADO.NET用于訪問數據庫,一般可以分為連接模式和非連接模式。連接模式指的是在訪問數據時,一直與數據庫保持連接,訪問完數據后才與數據庫斷開連接,主要采用的ADO.NET對象是Connection、Command、DataReader等;連接模式指的是通過數據集的方式對數據庫進行操作,將數據讀到內存中,從而完成數據的操作,數據集會自動更新到數據庫,主要采用ADO.NET對象是DataAdapter、DataSet等。下面的我們就來看一下代碼吧。
本示例代碼采用工廠模式的方式,這樣就可以達到只改變少量的代碼完成數據庫之間的切換,工廠模式是要采用的對象有以下幾個:DbProviderFactory、DbConnection、DbTransaction
、DbCommand、DbDataReader、DbDataAdapter、DbCommandBuilder等。

1、 共同的連接串

復制代碼 代碼如下:


string ProviderName = "System.Data.SqlClient";
string ConnStr = "Data Source=.;Initial Catalog=Northind;Integrated Security=True";
string sqlStr = "select * from dbo.Categories";



2、 非連接模式代碼如下:

復制代碼 代碼如下:


public void getSqlConnection()
{
//得到一個數據提供者,根據其傳入的數據提供者對象
DbProviderFactory dbf = DbProviderFactories.GetFactory(ProviderName);
//創建連接
DbConnection conn = dbf.CreateConnection();
//連接字符串
conn.ConnectionString = ConnStr;
conn.Open();
DbTransaction ts = conn.BeginTransaction();
DbCommand dbcmd = null;
try
{
dbcmd = dbf.CreateCommand();
dbcmd.CommandText = sqlStr;
dbcmd.Connection = conn;
dbcmd.Transaction = ts;
DbDataReader dr = dbcmd.ExecuteReader();
while (dr.Read())
{
Console.WriteLine(dr[1].ToString());
}
dr.Close();
ts.Commit();
}
catch (Exception e)
{
ts.Rollback();
}
finally
{
conn.Close();
if (dbcmd != null)
{
dbcmd.Dispose();
}
}
}


效果:

當年學習ADO.NET的筆記

3、 連接模式代碼:

復制代碼 代碼如下:


public void getDataSetConnection()
{
//得到一個數據提供者,根據其傳入的數據提供者對象
DbProviderFactory dbf = DbProviderFactories.GetFactory(ProviderName);
//創建連接
DbConnection conn = dbf.CreateConnection();
//連接字符串
conn.ConnectionString = ConnStr;
//創建DataAdapter對象
DbDataAdapter da = dbf.CreateDataAdapter();
//創建自動生成sql語句對象
DbCommandBuilder dbCmdb = dbf.CreateCommandBuilder();
using (DbCommand dbcmd = dbf.CreateCommand())
{
dbcmd.CommandText = sqlStr;
dbcmd.Connection = conn;
//DbDataAdapter指定命令
da.SelectCommand = dbcmd;
//DbCommandBuilder指定dataAdpter
dbCmdb.DataAdapter = da;
DataSet ds = new DataSet();
da.Fill(ds);
// ds.Tables[0].Rows[0].Delete();
da.Update(ds);
DataTable dt = ds.Tables[0];
DataRow dr;
for (int i = 0; i < dt.Rows.Count; i++)
{
dr = dt.Rows[i];
Console.WriteLine(dr[1] + " " + dr[2]);
}
}
}


效果:

當年學習ADO.NET的筆記

以上是一個簡單的例子,在正常情況下,就不會把連接串寫成字符串,應放在config文件中,同樣SQL語句也會改為存儲過程,這樣改起來比較方便。

總結

那些年學習ADO.NET,基本了解了怎樣去訪問數據庫,對其進行操作,現在.NET又有了一些新的方法,比如說使用Linq、DbContext等;此文以回憶那些年學習的日子。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩电影在线观看免费| 日本免费在线精品| 日韩精品中文字幕久久臀| 中文字幕亚洲国产| 欧美日韩中文字幕在线| 国内精品久久久久伊人av| 成人日韩在线电影| 97成人精品区在线播放| 精品国产欧美一区二区三区成人| 一本色道久久88精品综合| 成人伊人精品色xxxx视频| 亚洲免费精彩视频| 欧美激情免费看| 国产精品久久久久久久久久久不卡| 日韩中文字幕在线观看| 国产91成人在在线播放| 国产欧美精品日韩| 亚洲精品福利视频| 午夜精品一区二区三区在线播放| 中国china体内裑精亚洲片| 亚洲精品av在线播放| 国产精品久久一区| 成人xvideos免费视频| 国产噜噜噜噜噜久久久久久久久| 日韩av免费在线看| 久久精品国产一区二区电影| 国产精品激情av电影在线观看| 亚洲国产古装精品网站| 国产精品99久久久久久白浆小说| 欧美激情亚洲激情| 国产精品久久一区| 久久男人资源视频| 亚洲精品av在线| 欧美极品在线播放| 亚洲国产精品99| 91av中文字幕| 狠狠做深爱婷婷久久综合一区| 久久久久这里只有精品| 亚洲成人激情小说| 欧美丰满少妇xxxxx做受| 黑人精品xxx一区一二区| 自拍偷拍亚洲区| 日本欧美一二三区| 国产精品爱久久久久久久| 2019国产精品自在线拍国产不卡| 成人国产精品免费视频| 2024亚洲男人天堂| 国产欧美精品xxxx另类| 亚洲999一在线观看www| 亚洲第一黄色网| 国产日产欧美a一级在线| 国产精品美女网站| 夜夜嗨av一区二区三区免费区| 久久久国产精品一区| 国产精品久久久久久婷婷天堂| 亚洲福利在线观看| 欧美美女18p| 国产视频在线观看一区二区| 韩曰欧美视频免费观看| 欧美又大又粗又长| 欧美精品性视频| 琪琪第一精品导航| 91精品国产色综合久久不卡98| 美女999久久久精品视频| 亚洲综合在线播放| 久久在线观看视频| 欧美激情欧美狂野欧美精品| 日韩激情av在线免费观看| 欧美疯狂做受xxxx高潮| 九九热精品视频国产| 影音先锋欧美在线资源| 热门国产精品亚洲第一区在线| 欧美激情精品久久久久久变态| 欧美成人剧情片在线观看| 欧美日韩亚洲91| 亚洲www视频| 欧美一区二区三区精品电影| 久久久久久久久久久国产| 91成人国产在线观看| 日韩网站免费观看高清| 色婷婷综合久久久久中文字幕1| 九九热这里只有在线精品视| 国产成人精品免高潮在线观看| 日韩精品有码在线观看| 久久久亚洲福利精品午夜| 国产成人久久久| 91亚洲精品一区| 国产成人jvid在线播放| 亚洲高清免费观看高清完整版| 97人人爽人人喊人人模波多| 国产精品免费观看在线| 亚洲深夜福利在线| 丰满岳妇乱一区二区三区| 最近2019年日本中文免费字幕| 97免费视频在线| 亚洲精品中文字幕av| 国产精品色婷婷视频| 69久久夜色精品国产7777| 国产精品偷伦视频免费观看国产| 日韩电影第一页| 91精品国产91久久久久| 国产性猛交xxxx免费看久久| 97香蕉久久超级碰碰高清版| 欧美成人精品三级在线观看| 97精品久久久中文字幕免费| 92福利视频午夜1000合集在线观看| 国产精品一区二区三区久久久| 久久精品人人做人人爽| 中文字幕亚洲欧美日韩在线不卡| 国产最新精品视频| 国产精品∨欧美精品v日韩精品| 国产欧美精品久久久| 亚洲精品小视频在线观看| 欧美激情伊人电影| 国产精品成av人在线视午夜片| 日本a级片电影一区二区| 羞羞色国产精品| 久久91亚洲人成电影网站| 亚洲成人黄色在线观看| 久久久久久久久久久91| 日韩性生活视频| 国产精品在线看| 欧美日韩成人免费| 欧美另类极品videosbest最新版本| 中文字幕日韩av综合精品| 色综合影院在线| 日本精品视频在线播放| 国产手机视频精品| 日韩高清电影免费观看完整版| 久久亚洲电影天堂| 午夜精品在线观看| 亚洲伦理中文字幕| 国产亚洲日本欧美韩国| 精品女同一区二区三区在线播放| 欧美专区福利在线| 亚洲图片欧美日产| 91亚洲精品一区| 亚洲精品女av网站| 欧美精品18videos性欧美| 啊v视频在线一区二区三区| 日本91av在线播放| 日韩一区二区精品视频| 日韩视频在线一区| 欧美午夜片在线免费观看| 欧美另类老肥妇| 国产激情久久久久| 中文字幕一区电影| 成人免费在线视频网址| 不卡在线观看电视剧完整版| 日韩在线视频一区| 精品久久久久久久久久ntr影视| 91av中文字幕| 成人免费淫片视频软件| 国产精品久久久久久久久久尿| 一本色道久久88综合亚洲精品ⅰ| 国产日本欧美在线观看| 亚洲精品视频久久| 欧美激情在线观看| 欧美高清激情视频| 日韩高清免费在线| 国产亚洲人成a一在线v站| 国内精品伊人久久| 色综合久久久888| 国产精品视频公开费视频|