資料庫的併發操作通常會帶來三個問題

2021-10-13 19:52:28 字數 366 閱讀 3990

丟失更新:當乙個事務修改du了資料zhi,並且這種修改還沒有dao還沒有提交到zhuan資料庫中時shu,另外乙個事務又對同樣的資料進行了修改,並且把這種修改提交到了資料庫中。這樣,資料庫中沒有出現第乙個事務修改資料的結果,好像這種資料修改丟失了一樣。

髒讀:當乙個事務正在訪問資料,並對資料進行了修改,而這種修改還沒有提交到資料庫中,這時,另乙個事務也訪問這個資料,然後使用了這個資料。因為這個資料是還沒有提交的資料,那麼另乙個事務讀到的這個資料是髒資料,依據髒資料所做的操作可能是不正確的。

不可重複讀:在乙個事務內,多次讀同一資料。在這個事務還沒有結束時,另乙個事務也訪問該同一資料,那麼,在第乙個事務中的兩次讀資料之間,由於第二個事務的修改,第乙個事務兩次讀到的資料可能是不一樣的。

資料庫併發操作帶來的問題

1 丟失更新 當兩個或多個事物讀入同一資料並修改,會發生丟失更新問題,即後乙個事物更新的結果被前一事務所做更新覆蓋 即當事務a和b同事進行時,事務a對資料已經改變但並未提交時b又對同一資料進行了修改 注意此時資料是a還未提交改變的資料 到時a做的資料改動丟失了 2 不可重複讀 當兩個資料讀取某個資料...

資料庫的三個正規化

強調列的原子性,即列不能夠再分成其他幾列。考慮有這樣乙個表 聯絡人 姓名 性別 如果在實際場景中,乙個聯絡人有家庭 和公司 那麼這種表結構就不符合1nf,應把 列拆分成家庭 和公司 首先是1nf,另外還有兩部分內容。1.乙個表必須有乙個主鍵。2.不在主鍵裡的列必須依賴主鍵的所有內容,而不能只依賴主鍵...

操作sqlserver資料庫常用的三個方法

1 ado.net 連線字串,常用的兩種方式 server 計算機名或ip 例項名 database 資料庫名 uid sa pwd 密碼 server 計算機名或ip 例項名 database 資料庫名 integrated security true 常用的類庫 sqlconnection 連線...