日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
教您用事務(wù)一次處理多條SQL語句

下面就將為您介紹如何使用事務(wù)一次處理多條SQL語句的方法,包括SQL中事務(wù)的寫法以及調(diào)用的方法供您參考,希望對您學(xué)習(xí)SQL語句的執(zhí)行能夠有所幫助。

十載專注成都網(wǎng)站制作,企業(yè)網(wǎng)站建設(shè),個人網(wǎng)站制作服務(wù),為大家分享網(wǎng)站制作知識、方案,網(wǎng)站設(shè)計流程、步驟,成功服務(wù)上千家企業(yè)。為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù),專注于企業(yè)網(wǎng)站建設(shè),高端網(wǎng)頁制作,對成都發(fā)電機(jī)租賃等多個方面,擁有多年建站經(jīng)驗(yàn)。

執(zhí)行一個操作時,要同時修改多張表里的數(shù)據(jù),并且每條數(shù)據(jù)都必須操作成功,才算執(zhí)行成功,為了防止有些數(shù)據(jù)操作失敗,有些成功,而造成的數(shù)據(jù)錯亂,我們要使用事務(wù)。

事務(wù)就是:只有所有操作都成功則成功,只要有一條數(shù)據(jù)操作失敗,則回滾。

后臺寫事務(wù):

        ///


        /// 執(zhí)行多條SQL語句,實(shí)現(xiàn)數(shù)據(jù)庫事務(wù)。
       ///
access數(shù)據(jù)庫
       /// 多條SQL語句  
        public static void ExecuteSqlTran(List SQLStringList)
        {
            using (OleDbConnection conn = new OleDbConnection(SqlHelper.ConString))
            {
                conn.Open();
                OleDbCommand cmd = new OleDbCommand();
                cmd.Connection = conn;
                OleDbTransaction tx = conn.BeginTransaction();
                cmd.Transaction = tx;
                try
                {
                    for (int n = 0; n < SQLStringList.Count; n++)
                    {
                        string strsql = SQLStringList[n].ToString();
                        if (strsql.Trim().Length > 1)
                        {
                            cmd.CommandText = strsql;
                            cmd.ExecuteNonQuery();
                        }
                    }
                    tx.Commit();
                }
                catch (System.Data.OleDb.OleDbException E)
                {
                    tx.Rollback();
                    throw new Exception(E.Message);
                }
            }
        }

        ///


        /// 執(zhí)行多條SQL語句,實(shí)現(xiàn)數(shù)據(jù)庫事務(wù)。
        ///
sql2000數(shù)據(jù)庫
        /// 多條SQL語句
        public static void ExecuteSqlTran(List SQLStringList)
        {
            using (SqlConnection conn = new SqlConnection(SqlHelper.ConString))
            {
                conn.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conn;
                SqlTransaction tx = conn.BeginTransaction();
                cmd.Transaction = tx;
                try
                {
                    for (int n = 0; n < SQLStringList.Count; n++)
                    {
                        string strsql = SQLStringList[n].ToString();
                        if (strsql.Trim().Length > 1)
                        {
                            cmd.CommandText = strsql;
                            cmd.ExecuteNonQuery();
                        }
                    }
                    tx.Commit();
                }
                catch (System.Data.SqlClient.SqlException E)
                {
                    tx.Rollback();
                    throw new Exception(E.Message);
                }
            }
        }

前臺調(diào)用:

try
{
    //1.查出會員余額
    decimal usermoney = SqlDal.EntityUserinfo.GetModel(int.Parse(cookieUserID)).Money;
    //2.修改余額
    decimal Zmoney = usermoney + moAD.Commission;
    //寫SQL語句
    List SQLStringList = new List();
    string clickSql = "insert into [user] (name,age)values('" + 小名 + "','“+4歲+”')";
    string userSql = "update [class] set [name]='" + 幼兒園 + "' where id=" + 2 + " ";
    SQLStringList.Add(clickSql);
    SQLStringList.Add(userSql);
    SqlDal.SqlHelper.ExecuteSqlTran(SQLStringList);

    //數(shù)據(jù)庫操作成功
    //提示
    CommonClass.Xmls xmls1 = new CommonClass.Xmls();
    string path1 = CommonClass.Unit.GetMapPath(@"/Admin/Configs/SysSettingInfo.config");
    string ClickTishi = xmls1.GetXmlNode(path1, "SysSettingInfo/ClickTishi");
    //替換字符
    ClickTishi = ClickTishi.Replace("[$]", moAD.Commission.ToString("0.00"));
    context.Response.Write(ClickTishi); //輸出
}
catch (Exception ex)
{
    //Response.Write(ex.Message);
    context.Response.Write("操作失敗!" + ex.Message); //輸出
}

 

【編輯推薦】

通過執(zhí)行多條SQL語句實(shí)現(xiàn)數(shù)據(jù)庫事務(wù)

存儲過程優(yōu)化的SQL語句寫法

使用存儲過程檢查引起死鎖的SQL語句及進(jìn)程

SQL語句中CASE WHEN的使用實(shí)例

教您不帶參數(shù)的SQL語句執(zhí)行的方法


網(wǎng)頁標(biāo)題:教您用事務(wù)一次處理多條SQL語句
網(wǎng)站網(wǎng)址:http://www.dlmjj.cn/article/djoddhp.html