抽象数据类型,让Oracle数据库数据管理更加容易
2、 抽象數據的引用。
當建立好抽象數據類型的時候,數據庫管理員就可以向基本數據類型那樣,引用抽象數據類型,包括在建立表或者對相關字段進行賦值的時候,都這么方便。
如在建立表的時候,可以把這個抽象數據類型直接跟某個字段關聯起來。如
Create Table USERS
(F--_Adress Adress );
上面這個語句就是在USERS表中建立了一個F_Adress的字段,其數據類型為Adress。
若要對這個字段賦值的話,需要注意一個問題,要依次輸入賦值的內容,順序不能夠顛倒。如按照上面的定義,用戶在賦值的時候,需要依次輸入街道、城市、省份、郵編等等內容。若用戶在輸入的過程中,忘記輸入城市的話,則省份的內容將會直接輸入到城市中。另外,若數據類型不匹配的話,則就直接會有錯誤提示。當然數據庫管理員也可以根據需要,為特定的數據內容設置默認值,以方便管理。
?
三、抽象數據類型管理經驗分享。
筆者平時在數據庫設計中,非常鐘愛這個抽象數據類型。筆者十多年的數據庫管理經驗證明,利用抽象數據類型可以大幅度的簡化我們平時的工作。為此筆者在這方面也積累了不少的經驗。這里就拿出來跟大家分享一下。
?
經驗一:利用腳本建立抽象數據類型。
對于一些常用的抽象數據類型,數據庫管理員最好能夠利用腳本來建立抽象數據類型。如果每次建立數據庫的時候,都通過手寫代碼來完成的話,工作量會比較大。如筆者在日常工作中,就把常用的一些抽象數據類型,如員工姓名、地址、產品規格等抽象數據類型都保存在一個SQL腳本中,等到需要的時候,只需要運行這個腳本即可。這就可以減少一些不需要的編碼的編寫,從而提高數據庫開發設計的效率。
?
經驗二:對于多個數據庫對象中經常需要用到的數據,最好采用抽象數據類型。
如在一個ERP系統中,產品基本信息的產品規格可能包含多個部分的內容,如產品的顏色、尺寸、大小、外處理方式等等。而在采購訂單、進貨單等地方有需要多處進行引用。為了保障數據的一致性與統一性,最好為產品規格設置一個抽象數據類型 。如此的話,一方面在其他對象中引用這個內容的話,不用一個個字段的引用,從而簡化應用程序的設計; 另一方面,因為這些信息組合才能夠唯一的定位產品,所以,在采購訂單或者其他單據中統一的顯示,非常的關鍵。為此,若能夠一個數據類型來包含這些內容的話,則應用程序設計時就可以減少錯誤的發生。
?
經驗三:要考慮不同數據庫庫的兼容性問題。
抽象數據類型,它是Oracle數據庫對標準SQL語句的一種擴展。所以,雖然Oracle數據庫提供了抽象數據類型的功能,但是,其他品牌的數據庫不一定支持。這也就是說,這個抽象數據類型的兼容性并不時很好。如果數據庫管理員能夠預見在以后可能會把數據庫遷移到其他平臺的數據庫中,則這個抽象數據類型就需要慎用。否則的話,在數據庫移植的過程中,就會平白的遇到很多麻煩。
另外,由于標準的SQL語句不支持這個抽象數據類型,所以,如果采用其他的非Oracle數據庫出的SQL語句,就可能會造成額外的困擾。如有些數據庫管理員喜歡采用Excle等工具作為Oracle數據庫管理的輔助工具。若在數據庫中采用了抽象數據類型,那么Excle軟件將無法很好的支持Oralce數據庫。這也是Oracle數據庫管理員在考慮采用抽象數據類型需要考慮的內容。
最后,有一個值得慶幸的就是,這些抽象數據類型的執行計劃與其他Oracle數據庫系統默認的內部數據類型的執行計劃相同。這也就是說,抽象數據類型的引入對SQL語句的執行性能將不會產生任何影響。換一句話說,采用抽象數據類型并不會降低數據庫的性能,相反可以提高數據庫數據管理的一致性與統一性,從而讓數據管理起來更加的容易。所以說,如果不考慮抽象數據類型的兼容性問題的話,那么抽象數據類型將是數據庫管理員規劃數據的一個好幫手。
總結
以上是生活随笔為你收集整理的抽象数据类型,让Oracle数据库数据管理更加容易的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: IE6、IE7、Firefox无提示关闭
- 下一篇: mysql开启查看慢查询日志[转]