国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

探討關(guān)系型數(shù)據(jù)庫管理系統(tǒng)中數(shù)據(jù)庫表格的創(chuàng)建模式

2016-05-16 08:14王平華
大觀 2016年4期
關(guān)鍵詞:數(shù)據(jù)庫技術(shù)

摘要:本文重點闡述如何運用技術(shù)手段通過關(guān)系型數(shù)據(jù)庫管理系統(tǒng)進行數(shù)據(jù)庫表格的創(chuàng)建及數(shù)據(jù)維護。

關(guān)鍵詞:關(guān)系型數(shù)據(jù)庫管理系統(tǒng);數(shù)據(jù)庫;表;技術(shù)

關(guān)系型的數(shù)據(jù)庫管理系統(tǒng)在各種不同的業(yè)務(wù)應(yīng)用系統(tǒng)中得到了廣泛的運用,它不僅提供了大量數(shù)據(jù)的存儲及檢索功能,還提供了數(shù)據(jù)的安全與管理功能。在進行業(yè)務(wù)系統(tǒng)的數(shù)據(jù)庫設(shè)計時,一般都要從數(shù)據(jù)庫的概念設(shè)計開始,然后進行數(shù)據(jù)庫的邏輯設(shè)計,最后進行數(shù)據(jù)庫的物理設(shè)計三個步驟。本文僅探討如何通過不同的技術(shù)手段進行有效的數(shù)據(jù)庫表格的物理設(shè)計,從而提高數(shù)據(jù)庫數(shù)據(jù)的完整性及有效性。

一、數(shù)據(jù)庫表格創(chuàng)建的依據(jù)

在系統(tǒng)的設(shè)計中,有一部分是數(shù)據(jù)庫設(shè)計,數(shù)據(jù)庫的設(shè)計通常分為概念設(shè)計、邏輯設(shè)計和物理設(shè)計三個部分,每個步驟需要循序漸進,根據(jù)項目分析做好概念設(shè)計后,才能根據(jù)概念設(shè)計進行邏輯設(shè)計,而物理設(shè)計則是根據(jù)邏輯設(shè)計的結(jié)果進行。數(shù)據(jù)庫表格主要作用是用來進行數(shù)據(jù)存儲的,屬于數(shù)據(jù)庫設(shè)計的一部分內(nèi)容,數(shù)據(jù)庫表格創(chuàng)建屬于物理設(shè)計階段的工作,因此表格的創(chuàng)建需要根據(jù)邏輯設(shè)計展開。在進行數(shù)據(jù)庫物理設(shè)計時,需要在邏輯設(shè)計的基礎(chǔ)之上充分考慮不同類型的數(shù)據(jù)庫,如:Oracle和SQL Server它們在表示表格中列的數(shù)據(jù)類型就存在差異,它們數(shù)據(jù)存儲設(shè)計也不一樣。

二、數(shù)據(jù)庫表格創(chuàng)建的技術(shù)要點

(一)屬性的原子性

在創(chuàng)建數(shù)據(jù)庫表時,需要根據(jù)邏輯設(shè)計中的每個實體建立,這些實體需要確定含有哪些屬性,屬性對應(yīng)數(shù)據(jù)庫表中的列,每個屬性的劃分建議是原子性,即屬性最小化,不可再分解;屬性的多少建議與項目實用性關(guān)聯(lián)綜合考慮。另外,屬性不可以亂分,例如不能將屬于A實體的屬性劃分給B,將B的屬性劃分給A或其他。

(二)數(shù)據(jù)類型約束

在創(chuàng)建數(shù)據(jù)表對應(yīng)E-R圖中的實體,表中的列對應(yīng)實體中的屬性,在建立數(shù)據(jù)庫表時,需要確定屬性對應(yīng)的列的數(shù)據(jù)類型,如果數(shù)據(jù)類型選擇錯誤,會導(dǎo)致意想不到的后果。例如:員工實體中,存在屬性工號,在設(shè)置的工號屬性列選擇的數(shù)據(jù)類型建議使用varchar(10),如果用戶建表時采用int類型,結(jié)果將無法達到用戶想要的結(jié)果。假定張三的工號為004,如果是varchar類型,數(shù)據(jù)按照用戶要求進行,如果采用int類型存儲,結(jié)果數(shù)據(jù)只能以4的形式存在,顯然這不是用戶想看到的結(jié)果。

自定義的數(shù)據(jù)類型也是維護數(shù)據(jù)完整性的一個手段,例如在員工表中,有性別屬性列,可以采用nchar(1)來存儲,用戶可以輸入性別男或女的值,但是卻無法控制輸入男或女之外的值,如果是之外的值,顯然不符合客觀事實要求。針對這種問題,用戶可以采用自定義性別數(shù)據(jù)類型,確保用戶只能輸入性別男和女,先定義一種規(guī)則:

create rule sexRule as @value in (‘男, ‘女)

定義完規(guī)則后,創(chuàng)建性別數(shù)據(jù)類型:

create type sex from nchar(1)

將創(chuàng)建好的數(shù)據(jù)類型sex與定義好的sexRule規(guī)則進行綁定,然后將性別一列設(shè)置成數(shù)據(jù)類型為sex,這樣將確保性別列的數(shù)據(jù)正確有效,只能是“男”或者“女”中的任何一個值。

(三)Check條件約束

在數(shù)據(jù)的有效性控制方面,光靠數(shù)據(jù)類型約束控件是不夠的,例如,如果有學生信息表中存在入學年齡一列,在數(shù)據(jù)類型的選擇是整型,可是年齡不能是任何整數(shù),不能太大,也不太小,必須是一個有效的范圍,例如:17-30年齡范圍內(nèi),要做到這點,使用check約束條件可以實現(xiàn),在年齡列設(shè)置check約束,輸入SQL代碼:

([NianLing]>=(17) AND [NianLing]<=(30))

設(shè)置完成后,年齡的約束會自動應(yīng)用,您只要在輸入年齡列數(shù)據(jù)時,數(shù)據(jù)只能在17-30之間,包含17和30。

(四)主鍵技術(shù)

主鍵(primary key) 是表中的一個或多個字段,它的值用于唯一地標識表中的某一條記錄。也就是說,在一張表格記錄中,每行記錄的數(shù)據(jù)如果出現(xiàn)重復(fù),只要存在一列數(shù)據(jù)的不同,這是用來實體之間不同的唯一標識。例如在學生表中,“學號”可以是主鍵,姓名可以一樣,但“學號”不一樣;在教師表中,教師的“工號”可以是主鍵。在創(chuàng)建數(shù)據(jù)庫表時,建議每張表至少設(shè)置一個主鍵。

(五)參照完整性

數(shù)據(jù)庫設(shè)計中,為了數(shù)據(jù)的完整有效,且減低數(shù)據(jù)的冗余度,一般要求做到實體的完整性、用戶定義的完整性和參照的完整性。例如有班級和學生兩張表,學生表中,存在“班級”列,該列如果存班級的名稱,在數(shù)據(jù)管理中會出現(xiàn)難以預(yù)料的嚴重后果,例如庫中有幾萬名學生,出現(xiàn)某個的班級信息錯誤,這時需要對這些記錄進行修改,一是工作量大,二是容易出現(xiàn)錯誤。為了解決類似于這樣的問題,建議將班級表與學生表中的“班級”列進行關(guān)聯(lián),在學生表中的“班級”列中存放班級表的主鍵值,這樣在設(shè)計要求將班級表中的班級“編號”列主鍵作為學生表“班級”列的外鍵(外鍵:某表的主鍵作為其他表的列),學生表“班級”列的數(shù)據(jù)類型、長度要求和班級表中的“編號”列的數(shù)據(jù)類型、長度一致。例如前面提到的學生表班級名稱錯誤,只需要修改班級表中的班級“名稱”列即可,無需修改學生表中的“班級”列信息,這樣維護的數(shù)據(jù)量大大減少,且容易控制,如果需要查看學生表中的完整班級信息,只需要參照班級表即可。在關(guān)聯(lián)的表格中建立主外鍵就是參照完整性的技術(shù)應(yīng)用體現(xiàn)。

作者簡介:王平華,江西波陽,江西現(xiàn)代職業(yè)技術(shù)學院研究生,研究方向:軟件工程。

猜你喜歡
數(shù)據(jù)庫技術(shù)
數(shù)據(jù)庫
數(shù)據(jù)庫
探討電力系統(tǒng)中配網(wǎng)自動化技術(shù)
移動應(yīng)用系統(tǒng)開發(fā)
北京市中小企業(yè)優(yōu)化升級
數(shù)據(jù)庫
數(shù)據(jù)庫
數(shù)據(jù)庫
數(shù)據(jù)庫