freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

[計(jì)算機(jī)]第11章 事務(wù)與游標(biāo)-文庫吧

2025-09-20 03:51 本頁面


【正文】 @@TranCount 大于 1時(shí),每發(fā)出一個 Commit Transaction命令只會使 @@TranCount 按 1遞減。當(dāng) @@TRANCOUNT 最終遞減為 0 時(shí),將提交整個外部事務(wù)。 ? 當(dāng) @@TranCount為 0時(shí)發(fā)出 Commit Transaction 將會導(dǎo)致出現(xiàn)錯誤,因?yàn)闆]有相應(yīng)的 Begin Transaction。 3. Rollback Transaction ? Rollback Transaction語句回滾顯式事務(wù)或隱式事務(wù)到事務(wù)的起始位置,或事務(wù)內(nèi)部的保存點(diǎn),同時(shí)釋放由事務(wù)控制的資源。 ? Rollback Tran | Transaction [ transaction_name | @tran_name_variable savepoint_name | @savepoint_variable ] ? 說明: ? transaction_name: transaction_name 和@tran_name_variable的含義和 Begin Transaction語句中的含義相同。 ? savepoint_name: Save Transaction語句定義的保存點(diǎn)的名稱。 savepoint_name 必須符合標(biāo)識符規(guī)則。當(dāng)回滾只影響事務(wù)的一部分時(shí),可使用 savepoint_name。 ? @savepoint_variable:是用戶定義的、包含有效保存點(diǎn)名稱的變量的名稱。必須用 char、 varchar、nchar 或 nvarchar 數(shù)據(jù)類型聲明變量。 ? 不能在發(fā)出 Commit Transaction命令之后回滾事務(wù),因?yàn)閿?shù)據(jù)修改已經(jīng)成為了數(shù)據(jù)庫的一個永久部分。 4. Save Transaction ? Save Transaction語句在事務(wù)內(nèi)設(shè)置一個保存點(diǎn),當(dāng)事務(wù)執(zhí)行到該保存點(diǎn)時(shí), SQL Server存儲所有被修改的數(shù)據(jù)到數(shù)據(jù)庫中,具體的語法格式為: ? Save Tran | Transaction savepoint_name | @savepoint_variable ? 說明: ? savepoint_name:定義的保存點(diǎn)的名稱。savepoint_name 必須符合標(biāo)識符規(guī)則。 ? @savepoint_variable:是用戶定義的、包含有效保存點(diǎn)名稱的變量的名稱。必須用 char、 varchar、nchar 或 nvarchar 數(shù)據(jù)類型聲明變量。 ? 用戶可以在事務(wù)內(nèi)設(shè)置保存點(diǎn)或標(biāo)記。保存點(diǎn)可以定義在按條件取消某個事務(wù)的一部分后,該事務(wù)可以返回的一個位置。如果將事務(wù)回滾到保存點(diǎn),則根據(jù)需要必須完成其他剩余的 TransactSQL 語句和 Commit Transaction 語句,或者必須通過將事務(wù)回滾到起始點(diǎn)完全取消事務(wù)。 ? 在事務(wù)中允許有重復(fù)的保存點(diǎn)名稱,但指定保存點(diǎn)名稱的 Rollback Transaction 語句只將事務(wù)回滾到使用該名稱的最近的 Save Transaction。 隱式事務(wù) ? 當(dāng)連接以隱性事務(wù)模式進(jìn)行操作時(shí), SQL Server將在提交或回滾當(dāng)前事務(wù)后自動啟動新事務(wù)。因此,隱式事務(wù)不需要使用 Begin Transaction語句標(biāo)志事務(wù)的開始,只需要用戶使用 Rollback Transaction語句或 Commit Transaction語句回滾或提交事務(wù)。 ? 當(dāng)使用 Set語句將 IMPLICIT_TRANSACTIONS設(shè)置為 On將隱性事務(wù)模式打開之后, SQL Server執(zhí)行下列任何語句都會自動啟動一個事務(wù): Alter Table、 Create、 Delete、 Drop、 Fetch、 Grant、Insert、 Open、 Revoke、 Select、 Truncate Table、 Update。在發(fā)出 Commit 或 Rollback 語句之前,該事務(wù)將一直保持有效。在第一個事務(wù)被提交或回滾之后,下次當(dāng)連接執(zhí)行以上任何語句時(shí),數(shù)據(jù)庫引擎實(shí)例都將自動啟動一個新事務(wù)。該實(shí)例將不斷地生成隱性事務(wù)鏈,直到隱性事務(wù)模式關(guān)閉為止。 ? SQL Server提供了 Try?Catch 語句捕獲系統(tǒng)錯誤,與業(yè)務(wù)處理相關(guān)的語句包含在 Try塊中,如果 Try塊內(nèi)部發(fā)生錯誤,系統(tǒng)會將控制傳遞給Catch塊中的語句。 Try?Catch 語句的具體語法格式為: ? Begin Try ? sql_statement | statement_block ? End Try ? Begin Catch ? [sql_statement | statement_block ] ? End Catch 說明: ? sql_statement:任何 TransactSQL 語句。 ? statement_block:批處理或包含于 Begin?End 塊中的任何 TransactSQL 語句組。 ? Try 塊后必須緊跟相關(guān)聯(lián)的 Catch 塊。在 End Try 和 Begin Catch 語句之間放置任何其他語句都將生成語法錯誤。 ? 如果 Try 塊所包含的代碼中沒有錯誤,則當(dāng) Try 塊中最后一個語句完成運(yùn)行時(shí),會將控制傳遞給緊跟在相關(guān)聯(lián)的 End Catch 語句之后的語句。如果 Try 塊所包含的代碼中有錯誤,則會將控制傳遞給相關(guān)聯(lián)的 Catch 塊的第一個語句。如果 End Catch 語句是存儲過程或觸發(fā)器的最后一個語句,控制將回到調(diào)用該存儲過程或運(yùn)行該觸發(fā)器的語句。 ? 當(dāng) Catch 塊中的代碼完成時(shí),會將控制傳遞給
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1