AdSense

顯示具有 transaction-management 標籤的文章。 顯示所有文章
顯示具有 transaction-management 標籤的文章。 顯示所有文章

2025/6/11

Python psycopg2 交易管理

Python使用psycopg2存取PostgreSQL資料庫時的交易管理。

2021/1/12

Spring Boot Data JPA PlatformTransactionManager 手動管理交易

Spring Boot Data JPA使用PlatformTransactionManager在程式中手動管理交易。

2021/1/6

2020/12/10

資料庫 SQL交易隔離 不重覆讀 SQL transaction isolation non-repeatable read

ANSI SQL-92的4.28 SQL-transactions中提到的併發交易(concurrent transaction)隔離的不重覆讀(non-repeatable read)現象。

2020/12/7

Spring Data JPA 樂觀鎖 optimistic locking

Spring Data JPA 樂觀鎖(Optimistic locking)範例如下。

2020/12/6

MySQL 8 InnoDB SELECT FOR SHARE 與 SELECT FOR UPDATE 差異

MySQL 8 InnoDB 鎖定讀(Locking Reads)分為SELECT ... FOR SHARESELECT ... FOR UPDATE,兩者差異如下。

ANSI SQL-92 SQL-transaction isolation level

資料庫交易的ACID特性中的隔離性(Isolation)定義當一筆資料同時被多個交易存取時產生的影響程度。ANSI SQL-92文件中定義了四種隔離層級(isolation level):

2020/11/25

Spring Data JPA 未呼叫Repository.save()但資料卻更新

最近碰到Spring Data JPA的地雷,明明沒有呼叫CrudRepository.save()但資料卻更新。

2020/10/21

Spring 呼叫同類別的@Transactional方法不會回滾 call same class @Transactional method no rollback

Spring的交易管理(中國叫做事務管理)(Transactoinal Management)中,當由同類別中一個無交易管理(無@Transactional)的方法呼叫另一個有交易管理(有@Transactional)的方法時,有交易管理的方法發生例外時資料不會回滾(rollback)。

2020/8/29

Spring @Transactional 屬性預設值 attributes default setting

Spring @Transactional的屬性值預設如下。

Spring @Transactional 標註在類別的效果

Spring處理交易管理的@Transactional注釋可標註在類別(class)或方法(method)前,標注在類別的效果如下。

2020/8/21

資料庫 交易的悲觀鎖與樂觀鎖 Transaction pessimistic and optimistic locking

資料庫交易特性ACID中的交易隔離(Isolation)通常利用「鎖(locking)」來實現,目的為避免同一筆資料在併行交易(concurrent transaction)中被不同的交易同時修改以確保資料的完整性。

交易鎖又分為「悲觀鎖(pessimistic locking)」與「樂觀鎖(optimistic locking)」。

2020/8/4

資料庫 交易的重要特性 ACID

關聯式資料庫的交易(Database Transaction)有四個重要特性簡稱為ACID

2020/4/5

Spring @Transactional default rollbackFor

Spring @Transactional 能掛在類別或方法前來管理交易,預設觸發rollback的機制如下。

AdSense