六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

在ADO.NET中使用事務保護數據的完整性(4)

[摘要]實施事務既然我們已經看了類和成員,讓我們來看一下基本的實施情況.接下來的代碼是一個簡單的情況,使用事務來保證兩個存儲過程-一個從表中刪除庫存,另一個增加庫存在另個表中,或同時執行,或失敗.using System;using System.Drawing;using System.Collecti...
實施事務

既然我們已經看了類和成員,讓我們來看一下基本的實施情況.接下來的代碼是一個簡單的情況,使用事務來保證兩個存儲過程-一個從表中刪除庫存,另一個增加庫存在另個表中,或同時執行,或失�。�

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Data.SqlClient;
using System.Data.SqlTypes;

…public void SPTransaction(int partID, int numberMoved, int siteID)
{
// Create and open the connection.
SqlConnection conn = new SqlConnection();
string connString = "Server=SqlInstance;Database=Test;"
+ "Integrated Security=SSPI";
conn.ConnectionString = connString;
conn.Open();

// Create the commands and related parameters.
// cmdDebit debits inventory from the WarehouseInventory
// table by calling the DebitWarehouseInventory
// stored procedure.
SqlCommand cmdDebit =
new SqlCommand("DebitWarehouseInventory", conn);
cmdDebit.CommandType = CommandType.StoredProcedure;
cmdDebit.Parameters.Add("@PartID", SqlDbType.Int, 0, "PartID");
cmdDebit.Parameters["@PartID"].Direction =
ParameterDirection.Input;
cmdDebit.Parameters.Add("@Debit", SqlDbType.Int, 0, "Quantity");
cmdDebit.Parameters["@Debit"].Direction =
ParameterDirection.Input;

// cmdCredit adds inventory to the SiteInventory
// table by calling the CreditSiteInventory
// stored procedure.
SqlCommand cmdCredit =
new SqlCommand("CreditSiteInventory", conn);
cmdCredit.CommandType = CommandType.StoredProcedure;
cmdCredit.Parameters.Add("@PartID", SqlDbType.Int, 0, "PartID");
cmdCredit.Parameters["@PartID"].Direction =
ParameterDirection.Input;
cmdCredit.Parameters.Add
("@Credit", SqlDbType.Int, 0, "Quantity");
cmdCredit.Parameters["@Credit"].Direction =
ParameterDirection.Input;
cmdCredit.Parameters.Add("@SiteID", SqlDbType.Int, 0, "SiteID");
cmdCredit.Parameters["@SiteID"].Direction =
ParameterDirection.Input;

// Begin the transaction and enlist the commands.
SqlTransaction tran = conn.BeginTransaction();
cmdDebit.Transaction = tran;
cmdCredit.Transaction = tran;

try
{
// Execute the commands.
cmdDebit.Parameters["@PartID"].Value = partID;
cmdDebit.Parameters["@Debit"].Value = numberMoved;
cmdDebit.ExecuteNonQuery();

cmdCredit.Parameters["@PartID"].Value = partID;
cmdCredit.Parameters["@Credit"].Value = numberMoved;
cmdCredit.Parameters["@SiteID"].Value = siteID;
cmdCredit.ExecuteNonQuery();

// Commit the transaction.
tran.Commit();
}
catch(SqlException ex)
{
// Roll back the transaction.
tran.Rollback();

// Additional error handling if needed.
}
finally
{
// Close the connection.
conn.Close();
}
}




// Commit the outer transaction.

tran.Commit();

}

catch(OleDbException ex)

{

//Roll back the transaction.

tran.Rollback();



//Additional error handling if needed.

}

finally

{

// Close the connection.

conn.Close();

}

}





主站蜘蛛池模板: 四虎国产精品永久在线 | 色噜噜狠狠色综合中文字幕 | 青青青视频在线播放视频 | 四虎永久免费影院在线 | 色噜噜噜噜噜噜 | 四虎永久免费地址在线观看 | 啪啪福利 | 日韩成人免费在线视频 | 亚洲二区在线观看 | 最近日本韩国观看 | 一本久久道 | 欧洲免费极品videos | 在线视频一区二区三区 | 天天躁夜夜| 视频在线免费观看网址 | 无声在线完整版免费观看 | 青青青久热国产精品视频 | 午夜在线亚洲男人午在线 | 情侣国产| 欧美一级免费看 | 性爽视频| 午夜爱 | 午夜影视在线观看 | 天天狠狠色噜噜 | 日本成人二区 | 中文字幕在线播放第一页 | 青青草免费在线 | 欧美系列在线 | 亚洲 欧美 清纯 丝袜 另类 | 中文字幕第一页在线播放 | 网站一级片 | 色综合久久网 | 一级毛片a女人刺激视频免费 | 午夜黄色 | 青青草精品在线视频 | 做性视频 | 日日干夜夜艹 | 天天操天天摸天天碰 | 手机在线三级 | 天堂在线最新版资源www | 日本免费在线一区 |