資料表欄位要怎麼設定

更新 發佈閱讀 3 分鐘

強烈建議除了ID序號跟時間戳記的欄位一率都用VARCHAR2。

會有這樣的建議是因為今年接了個把舊系統重構的需求,這種需求很常見的,不是什麼新鮮的事情,但是那一個系統是在2000年的時候建置的距今約25年的時間,使用的是Oracle 8 的資料庫系統,真的是一個讓人很震驚的狀態。

再來更炸裂的是在資料庫中有大量了stored procedure 這玩意就是一個超大的雷坑,基本上看到這個東西就知道這一個系統之前是經過多麼慘烈的維護狀態,也是很佩服這一個系統可以維護了25 年的時間。

而且讓這一個系統會需要重構的原因還不是這個驚人的使用時間,而是因爲使用VB6 開發的功能只能在win xp 的主機上運作,嚴重的資安issue 讓這套系統不是有安全隱患而是根本在一個裸奔的狀態,總算在有任看不下去的狀況下開始了重構的作業。

應該是當初他完全使用stored procedure 處理他的商業邏輯運算,所以資料欄位的格式相當的多元,再加上他的資料表設計的相當冗長,一個表有超過一百多的欄位的狀況,所以整個移轉的過程出現大量的欄位格式轉換的問題,加上資料表的欄位眾多就需要去計算對應的欄位以及找到對應的欄位項目加上轉換格式處理,所以光是轉一個表大概就會耗上一週的時間。

有人會問說那為什麼不直接整個資料庫複製過來就好,第一:新建的資料庫是Oracle 19 而舊的系統是Oralce 8 這兩個資料庫完全無法對抄,這兩的跨度之大幾乎是你要把秦滅六國時候的文字放到現在的word 系統一樣,第二:我所在的地方dba 是一個恨神奇的存在,只裝資料庫其他都不管了,所有的事情都是要自理。

基於以上的原因寫程式去轉資料,就會我給出的這樣的建議,如果你有機會可以從頭設計的一個資料表,會建議你一率都是用VARCGAR2 ,因為如果你待的地方是一個比較正常一點的組織,每兩到三年系統一個大版本升級是很有可能會遇到,萬一你又還沒離職那吃這一份狗糧的痛苦就可以大大的減少了。

留言
avatar-img
留言分享你的想法!
avatar-img
IT 都在背什麼鍋
0會員
3內容數
IT 都在背什麼鍋
你可能也想看
Thumbnail
不是每個人都適合自己操盤,懂得利用「專業」,才是績效拉開差距的開始
Thumbnail
不是每個人都適合自己操盤,懂得利用「專業」,才是績效拉開差距的開始
Thumbnail
生產力爆發帶來的過剩,會讓過去的「還可以啦」成為最低標準。市場需求對於出類拔萃、獨一無二的需求還是存在,但是對於那些價格高度敏感,或是只需要穩定、便宜、還可以啦的需求端來說,AI 正在迅速取代這部分的供給,中間長尾的服務提供者被 AI 替換。
Thumbnail
生產力爆發帶來的過剩,會讓過去的「還可以啦」成為最低標準。市場需求對於出類拔萃、獨一無二的需求還是存在,但是對於那些價格高度敏感,或是只需要穩定、便宜、還可以啦的需求端來說,AI 正在迅速取代這部分的供給,中間長尾的服務提供者被 AI 替換。
Thumbnail
今年在 Google I/O 有幸看到 Hassabis 本人幾秒,DeepMind 和共同創辦人 Demis Hassabis 的這個題目,也一直都在待寫清單中。 前陣子,在介紹 Founders Fund 時,發現 Demis Hassabis 當初在說服 Peter Thiel 投資 Dee
Thumbnail
今年在 Google I/O 有幸看到 Hassabis 本人幾秒,DeepMind 和共同創辦人 Demis Hassabis 的這個題目,也一直都在待寫清單中。 前陣子,在介紹 Founders Fund 時,發現 Demis Hassabis 當初在說服 Peter Thiel 投資 Dee
Thumbnail
年末總有一種莫名的魔力,讓人特別容易感到孤單。 聖誕節、跨年、緊接著農曆新年……滑開社群,不是甜蜜放閃,就是一群人早早訂好跨年行程。 明明日子算得上順遂,工作穩定無憂,生活也按部就班地往前走着,可總在萬籟俱寂的夜晚,獨自對着空蕩的房間時,心底會悄悄冒出一個念頭:今年,是不是可以不一樣?不再獨自抵
Thumbnail
年末總有一種莫名的魔力,讓人特別容易感到孤單。 聖誕節、跨年、緊接著農曆新年……滑開社群,不是甜蜜放閃,就是一群人早早訂好跨年行程。 明明日子算得上順遂,工作穩定無憂,生活也按部就班地往前走着,可總在萬籟俱寂的夜晚,獨自對着空蕩的房間時,心底會悄悄冒出一個念頭:今年,是不是可以不一樣?不再獨自抵
Thumbnail
在 Excel 中,SORT 函數能依指定欄位與排序方式,將資料動態排序並輸出新陣列。它不會改變原始資料,而是回傳一個新的排序結果,適合用於報表整理、名單排序、動態分析與結構重建。 用途:依指定欄位與排序方式,回傳排序後的陣列
Thumbnail
在 Excel 中,SORT 函數能依指定欄位與排序方式,將資料動態排序並輸出新陣列。它不會改變原始資料,而是回傳一個新的排序結果,適合用於報表整理、名單排序、動態分析與結構重建。 用途:依指定欄位與排序方式,回傳排序後的陣列
Thumbnail
在 Excel 中處理橫向表格(欄首為標題)時,HLOOKUP 函數可根據指定的查詢值,在第一列中尋找對應欄位,並回傳該欄指定列的資料。它是 VLOOKUP 的橫向版本,適合用於橫向報表、欄位查詢與資料擷取。 用途:根據欄首標題查找資料,橫向擷取指定列的值
Thumbnail
在 Excel 中處理橫向表格(欄首為標題)時,HLOOKUP 函數可根據指定的查詢值,在第一列中尋找對應欄位,並回傳該欄指定列的資料。它是 VLOOKUP 的橫向版本,適合用於橫向報表、欄位查詢與資料擷取。 用途:根據欄首標題查找資料,橫向擷取指定列的值
Thumbnail
在資料處理或報表整合過程中,空白列與空白欄位不僅影響可讀性,也可能干擾公式運算與篩選功能。透過 VBA,我們可以建立一個「一鍵清理」功能,自動刪除工作表中所有完全空白的列與欄位,讓資料更整齊、報表更俐落。 自動偵測並刪除工作表中完全空白的欄位
Thumbnail
在資料處理或報表整合過程中,空白列與空白欄位不僅影響可讀性,也可能干擾公式運算與篩選功能。透過 VBA,我們可以建立一個「一鍵清理」功能,自動刪除工作表中所有完全空白的列與欄位,讓資料更整齊、報表更俐落。 自動偵測並刪除工作表中完全空白的欄位
Thumbnail
在 Excel 中處理大型資料表、建立動態報表或進行欄位篩選時,CHOOSECOLS 函數能根據指定的欄位索引值,從陣列中選取對應欄位。它支援多欄選取、負索引(從右數)與動態陣列,是 Excel 365 中常用的資料重組工具。
Thumbnail
在 Excel 中處理大型資料表、建立動態報表或進行欄位篩選時,CHOOSECOLS 函數能根據指定的欄位索引值,從陣列中選取對應欄位。它支援多欄選取、負索引(從右數)與動態陣列,是 Excel 365 中常用的資料重組工具。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News