- 企業架構與IT戰略規劃設計教程
- 郭樹行
- 691字
- 2019-10-31 11:21:24
3.4 數據CRUD
3.4.1 什么是數據CRUD
CRUD是指在做計算處理時的Create(增加)、Retrieve(查詢)(重新得到數據)、Update(更新)和Delete(刪除)幾個單詞的首字母簡寫,主要被用在描述軟件系統中數據庫或者持久層的基本操作功能。表3-8給出了定義劃分。
表3-8 CRUD的應用

3.4.2 數據CRUD與SQL
以SQL為例,數據制作(Create)對應重新制作數據庫的CREATE TABLE指令和數據庫新增加的INSERT指令。數據的讀取(Retrieve)主要以使用SELECT指令搜索數據庫表示其結果來進行。數據的更新(Update)對應UPDATE指令,而數據的刪除分別對應刪除一行的DELETE指令和刪除數據庫的DROP TABLE指令。
[例-Create] 建立學生選課表SC
CREATE TABLE SC (Sno CHAR (9), Cno CHAR (4), Grade SMALLINT, PRIMARY KEY (Sno, Cno), /*主碼由兩個屬性構 成,必須作為表級完整性進行定義*/ FOREIGN KEY (Sno) REFERENCES Course (Sno)/*表級完整性約束條件,Sno是外碼,被參照表是 Student*/ FOREIGN KEY (Sno) REFERENCES Course (Cno)/*表級完整性約束條件,Cno是外碼,被參照表是 Course*/
[例-Retrive數據庫紅皮書] 查詢電子商務系的學生及年齡不小于20歲的學生
SELECT * FROM Student WHERE Sdept = 'EB'
UNION SELECT * FROM Student WHERE Sage >=20;
[例-Update] 插入一條選課記錄('2009311050', '1')
INSERT INTO SC (Sno, Cno) VALUES ('2009311050', '1');
[例-Delete ]刪除計算機科學系所有學生的選課記錄
DELETE FROM SC WHERE 'CS'= (SELECT Sdept FROM Student WHERE Student.Sno = SC.Sno)
3.4.3 數據CRUD的意義
通過數據CRUD合理規劃和設計,可以明確系統中的核心數據由哪些系統產生,哪些系統有權力去讀取這些數據,這些數據的更新權和刪除權又屬于哪些系統,從而確保數據的安全以及在數據不一致時很容易確定以哪個系統的數據為準。
3.4.4 案例分析:某通信行業公司CRUD規范
表3-9至表3-15是某通信行業公司關于客戶主題域的CRUD規范(部分)。
表3-9 客戶—客戶問題

表3-15 客戶—客戶賬務

表3-10 客戶—客戶優惠

表3-11 客戶—客戶交互

表3-12 客戶—客戶評估與統計

表3-13 客戶—客戶服務

表3-14 客戶—客戶異常賬務處理

產品、市場營銷、合作伙伴、服務、資源、企業管理等主題域依此類推。