SUBTYPE正規化資料型別

2021-08-27 09:22:03 字數 725 閱讀 8715

subtype是型別的別名,倘若需求變更,只需修改乙個地方的定義,其他**都不用改動

也許我們習慣了變數來代表未知數,但卻不習慣變數來代表變數型別

而subtype正是起到了這樣的作用,他可以用乙個新的型別變數來代表乙個已知的型別

如果你定義的變數很可能需要改變變數型別,則使用subtype能大大減少你的**修改量

好處n多,比如,可以重用,能讓各模組減少依賴性,減少後期維護的成本等等

舉個例子,

假定我有乙個表:book,裡面有個字段:page_count,型別為number(2)

現在我的需求是,寫個程式,實現我目前寫過的所有書的頁碼

我可以這樣寫:

declare

l_total book.page_count%type;

這樣寫是沒問題的,但如果我的所有頁碼超過了100頁呢?

我也可以這樣寫:

declare

l_total number(10);

這是種硬編碼寫法,think比較討厭

這也不行?那也不行?您在鬧那樣呀?哈哈....

其實,我們可以這樣:

create or replace package pkg_book

assubtype total_count is number(10);

end pkg_book;

然後,declare

l_total pkg_book.total_count;

資料型別基礎資料型別

資料型別 基礎型別 除八大基礎型別其他的都是引用型資料型別 引用資料型別 基礎資料型別 整型 byte 佔乙個位元組,範圍 128 127 short 佔兩個位元組,範圍 32768 32767 int 最常用 佔四個位元組,範圍 2147483648 2147483647 long 佔八個位元組 ...

資料型別 基本資料型別和引用資料型別

一.分類 1,五種簡單資料型別 基本資料型別 number,string,boolean,null,undefined,新增symbol es6 基本資料型別是指存放在棧中的簡單資料段,資料大小確定,記憶體空間大小可以分配,它們是直接按值存放的,所以可以直接按值訪問。1 undefined 宣告的變...

SQL 資料型別 MySQL 資料型別

在 mysql 中,有三種主要的型別 文字 數字和日期 時間型別。資料型別 描述char size 儲存固定長度的字串 可包含字母 數字以及特殊字元 在括號中指定字串的長度。最多 255 個字元。varchar size 儲存可變長度的字串 可包含字母 數字以及特殊字元 在括號中指定字串的最大長度。...