ADO.NET事物處理

多條sql語句同時執(zhí)行的時候如果有其中一條語句出現(xiàn)錯誤那么可能導致數(shù)據(jù)的不完整。通過事物可以保證這些語句要么全部成功航徙。要么全部失敗如贷。如果失敗了就會恢復到事物之前的狀態(tài)。這個叫做回滾
那么現(xiàn)在我們在數(shù)據(jù)庫中創(chuàng)建一個學生表

CREATE TABLE [dbo].[Student](
[ID] [INT] IDENTITY(1,1) NOT NULL,
[Name] [VARCHAR](50) NULL,
[Sex] [VARCHAR](2) NULL,
[Age] [VARCHAR](50) NULL,
[Class] [VARCHAR](50) NULL,
CONSTRAINT [PK_Student] PRIMARY KEY CLUSTERED 
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO

創(chuàng)建好表格后通過ADO.NET進行插入捉偏。

using (SqlConnection conn = new SqlConnection("Server=.;DataBase=School;User Id=sa;PassWord=xx"))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.Connection = conn;
conn.Open();//打開數(shù)據(jù)庫
SqlTransaction tran = conn.BeginTransaction();//開啟數(shù)據(jù)庫事物
cmd.Transaction = tran;
try {
for (int i = 0; i < 5; i++)
{
if (i == 2)//如果執(zhí)行到第二個的是否把學生表的性別多加幾個sss因為數(shù)據(jù)庫創(chuàng)建的是否這一列的字段長度是2這樣子就超出字段長度會出現(xiàn)異常倒得。
{
cmd.CommandText = "insert into Student(Name,Sex,Age,Class) values('" + this.TextBox1.Text + "','" + this.DropDownList1.SelectedValue + "sss" + "','" + this.TextBox2.Text + "','" + TextBox3.Text + "')";
}
else
{
cmd.CommandText = "insert into Student(Name,Sex,Age,Class) values('" + this.TextBox1.Text + "','" + this.DropDownList1.SelectedValue + "','" + this.TextBox2.Text + "','" + TextBox3.Text + "')";
}
cmd.ExecuteNonQuery();
}
tran.Commit();
}
catch
{
tran.Rollback();
}
conn.Close();
}
}

通過上面的代碼可以看到。我們故意再第二次插入的是否修改了學生的性別多加了幾個字符夭禽。這樣子會導致出現(xiàn)異常霞掺,在異常發(fā)送的是否執(zhí)行了 catch語句中的回滾。這樣子前面兩條語句也就恢復到之前的狀態(tài)了讹躯。就相當于沒有插入過菩彬。大家有問題可以

Console.WriteLine(”加群“+"537905238");
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市潮梯,隨后出現(xiàn)的幾起案子骗灶,更是在濱河造成了極大的恐慌,老刑警劉巖秉馏,帶你破解...
    沈念sama閱讀 219,270評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件耙旦,死亡現(xiàn)場離奇詭異,居然都是意外死亡萝究,警方通過查閱死者的電腦和手機免都,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,489評論 3 395
  • 文/潘曉璐 我一進店門锉罐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人绕娘,你說我怎么就攤上這事脓规。” “怎么了险领?”我有些...
    開封第一講書人閱讀 165,630評論 0 356
  • 文/不壞的土叔 我叫張陵侨舆,是天一觀的道長。 經常有香客問我绢陌,道長挨下,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,906評論 1 295
  • 正文 為了忘掉前任下面,我火速辦了婚禮复颈,結果婚禮上,老公的妹妹穿的比我還像新娘沥割。我一直安慰自己,他們只是感情好凿菩,可當我...
    茶點故事閱讀 67,928評論 6 392
  • 文/花漫 我一把揭開白布机杜。 她就那樣靜靜地躺著,像睡著了一般衅谷。 火紅的嫁衣襯著肌膚如雪椒拗。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,718評論 1 305
  • 那天获黔,我揣著相機與錄音蚀苛,去河邊找鬼。 笑死玷氏,一個胖子當著我的面吹牛堵未,可吹牛的內容都是我干的。 我是一名探鬼主播盏触,決...
    沈念sama閱讀 40,442評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼渗蟹,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了赞辩?” 一聲冷哼從身側響起雌芽,我...
    開封第一講書人閱讀 39,345評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎辨嗽,沒想到半個月后世落,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 45,802評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡糟需,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,984評論 3 337
  • 正文 我和宋清朗相戀三年屉佳,在試婚紗的時候發(fā)現(xiàn)自己被綠了来破。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,117評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡忘古,死狀恐怖徘禁,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情髓堪,我是刑警寧澤送朱,帶...
    沈念sama閱讀 35,810評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站干旁,受9級特大地震影響驶沼,放射性物質發(fā)生泄漏。R本人自食惡果不足惜争群,卻給世界環(huán)境...
    茶點故事閱讀 41,462評論 3 331
  • 文/蒙蒙 一回怜、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧换薄,春花似錦玉雾、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,011評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至冲泥,卻和暖如春驹碍,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背凡恍。 一陣腳步聲響...
    開封第一講書人閱讀 33,139評論 1 272
  • 我被黑心中介騙來泰國打工志秃, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人嚼酝。 一個月前我還...
    沈念sama閱讀 48,377評論 3 373
  • 正文 我出身青樓浮还,卻偏偏與公主長得像,于是被迫代替她去往敵國和親革半。 傳聞我的和親對象是個殘疾皇子碑定,可洞房花燭夜當晚...
    茶點故事閱讀 45,060評論 2 355