資料庫複習2

2021-07-22 07:09:58 字數 1717 閱讀 5311

前面主要是對於資料庫的基本知識做了講解,下面來了解資料庫中比較重要的幾個部分

1.觸發器

sql server實現資料完整性的具體方法有4種

約束、預設、規則和觸發器

觸發器是實施複雜完整性的特殊型別的儲存型別。觸發器不需要專門語句呼叫,當對它所保護資料進行修改時自動啟用,以防止對資料進行不正確,未授權或不一致的修改。 乙個觸發器只適用於乙個表,每個表最多只能有三個觸發器,它們分別是insert、update和delete觸發器。觸發器僅在實施資料完整性和處理業務規則時使用

2.基本語法

3.應用例項

捲菸資料庫及其觸發器的例子

1)建表

2)建立觸發器

捲菸銷售表觸發器

create

trigger t_insert_捲菸銷售表

on 捲菸銷售表

forinsert

asbegin

transaction

ifnot

exists(

select 庫存數量

from 捲菸庫存表

where 捲菸品牌

in (select 捲菸品牌from inserted)

)begin

raiserror('錯誤!該捲菸不存在,不能銷售。',16,1)

rollback

return

endif

exists(

select 庫存數量

from 捲菸庫存表

where 捲菸品牌in (select 捲菸品牌from inserted) and

庫存數量<= 0

)begin

--返回錯誤提示

raiserror('錯誤!該捲菸庫存小於等於,不能銷售。',16,1)

--回滾事務

rollback

return

endupdate 捲菸銷售表

set 銷售金額= 銷售數量* 銷售單價

where 捲菸品牌in (select 捲菸品牌from inserted)

declare @捲菸品牌varchar(40)

set @捲菸品牌= (select 捲菸品牌from inserted)

declare @銷售數量money

set @銷售數量= (select 銷售數量from inserted)

update 捲菸庫存表

set 庫存數量= 庫存數量- @銷售數量,庫存金額= (庫存數量- @銷售數量)*庫存單價

where 捲菸品牌= @捲菸品牌

commit

transaction

go

3)插入資料

捲菸庫存表中插入數字,使它更新庫存金額

捲菸銷售表中插入,使它更新銷售金額,同時,庫存表會做出相應的修改操作

資料庫複習 2 關聯式資料庫

關聯式資料庫由關係資料結構 關係操作集合和完整性約束組成。關係模型的資料結構只包含關係。具有相同資料型別值的集合 集合運算 關係是笛卡爾積的有限子集,關係也是乙個二維表。對每列起乙個名字,稱為屬性 關係中能唯一標識元組的屬性組稱為候選碼 候選碼的屬性稱為主屬性 選乙個候選碼作為主碼 所有屬性都是候選...

資料庫複習 2 關聯式資料庫

關聯式資料庫由關係資料結構 關係操作集合和完整性約束組成。關係模型的資料結構只包含關係。具有相同資料型別值的集合 集合運算 關係是笛卡爾積的有限子集,關係也是乙個二維表。對每列起乙個名字,稱為屬性 關係中能唯一標識元組的屬性組稱為候選碼 候選碼的屬性稱為主屬性 選乙個候選碼作為主碼 所有屬性都是候選...

資料庫複習

這是本科資料庫課程的複習。考試內容主要是資料庫的基本概念,資料庫設計資料庫系統的優化和恢復。至於設計底層的資料庫管理系統原理,坑先挖了,日後補,是我計畫中的一門課程。目錄資料庫系統 一般由資料庫。資料庫管理系統 及其開發工具 應用系統 資料庫管理員構成。目的 儲存資訊並支援使用者檢索和更新所需的資訊...