1、什麼是事務?
不可分割的邏輯單元,由多個操作組成。
a.自動提交事務
b.顯示事務
c.隱式事務
--建立資料庫(倉庫)、表(貨架)、字段(商品格仔) (結構)
12、資料庫的全域性變數,資料庫全域性變數和自定義變數的區別?--建立表和插入測試資料
2create
database
bankdb;
3use
bankdb4
5create
table
bank(
6 bankid int
primary
keynot
null
,7 name varchar(20) not
null
,8 accountmoney money
check(accountmoney>=1)
9)10
11insert
into
bank
12select
1001,'
張三',500
union
13select
1002,'
李四',1500
union
14select
1003,'
王五',1000
@@identity獲取最近自動增長的值
@@error 獲取錯誤資訊編號
--凡是系統定義的變數@@
--凡是自定義的變數都是@
3、自動提交事務
--insert
--update
--delete 班級表 和 學生表 (約束) sql server 預設的刪除中間存在約束的時候都刪除不了
4、顯示事務
--開始事務begin transaction
15、隱式事務(sql server 要手動開啟,oracle預設就是隱式事務)--模擬轉賬的操作23
--因為有多個操作,至少兩個 update 修改減張三的錢 update修改加李四的錢,其他還可能有系統日誌和業務日誌(裝置編號、通過哪個業務員轉,可能還有insert)45
67declare
@errornum
int=0--
定義存放錯誤的結果89
update
bank
1011
set accountmoney=accountmoney-
50012
13where bankid=
1001
and name='張三
'--索引或者欄位較小
1415
1617
18set
@errornum
=@errornum
+@@error
--如果出錯,這是@@error非零的錯誤數字
1920
update
bank
2122
set accountmoney=accountmoney+
50023
24where bankid=
1002
and name='李四
'252627
28set
@errornum
=@errornum
+@@error
--非零的錯誤數字
2930
3132
33if
@errornum
<>034
35begin
3637
rollback
transaction;38
39end
4041
else
begin
4243
commit
transaction;44
45end;46
4748
4950
--事務四種特性 --原子性、一致性、隔離性、永續性 查詢--對資料沒有更新操作
5152
commit;53
54update
bank
5556
set accountmoney=accountmoney-
50057
58where bankid=
1001
and name='張三
'--索引或者欄位較小 --獨立的
5960
6162
update
bank
6364
set accountmoney=accountmoney+
50065
66where bankid=
1002
and name='李四
'
隱式事務,insert等之後資料是沒有持久化的,需要commit持久化,沒有commit是髒資料(存放在記憶體緩衝區)
隱式事務如果開啟,insert update delete 都不會自動持久化,需要大家手動的持久化
set implicit_transactions off 開啟隱式事務、off 關閉
selecttranslate with*from
bank
rollback; --
回滾 commit; --
提交 insert
into bank values(1005,'
洪七公',500)
xenglish
arabic
hebrew
polish
bulgarian
hindi
portuguese
catalan
hmong daw
romanian
chinese simplified
hungarian
russian
chinese traditional
indonesian
slovak
czech
italian
slovenian
danish
japanese
spanish
dutch
klingon
swedish
english
korean
thai
estonian
latvian
turkish
finnish
lithuanian
ukrainian
french
malay
urdu
german
maltese
vietnamese
greek
norwegian
welsh
haitian creole
persian
translate with
copy the url below
back
embed the snippet below in your site
" readonly>
enable collaborative features and customize widget: bing webmaster portal
back
資料庫三種事務
什麼是事務 是不可分割的邏輯單元,由多個操作部分組成 select getdate 函式 1.自動提交事務 insert update delete都是自動提交事務 比如乙個學生表和班級表有外來鍵約束 只刪掉班級表的資料是執行不了的 insert into student values 張三 男 2...
資料庫三種正規化
正規化是符合某一種級別的關係模式的集合。關聯式資料庫中的關係必須 滿足一定的要求。滿足最低要求的叫第一正規化,簡稱1nf,在第一正規化基礎上進一步滿足一些要求的為第二正規化,簡稱2nf。其餘依此類推,目前有六種範 式 1nf,2nf,3nf,bcnf,4nf,5nf。1 第一正規化 1nf 在任何乙...
資料庫三種設計正規化
1 正規化定義 規範的的資料庫是需要滿足一些規範的來優化資料資料儲存方式。在關係型資料庫中這些規範就可以稱為正規化。2 第一正規化 域原子性 1nf 當關係模式r的所有屬性都不能在分解為更基本的資料單位時,稱r是滿足第一正規化的,簡記為1nf。滿足第一正規化是關係模式規範化的最低要求。3 第二正規化...