全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1807
推到 Plurk!
推到 Facebook!

MS Sql server----如何查知各資料表的關係?

尚未結案
cancer
高階會員


發表:58
回覆:319
積分:190
註冊:2004-07-31

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-11 22:20:16 IP:210.201.xxx.xxx 未訂閱
各位大大,    我正嚐試使用 Sql Server 中預設安裝好的 NorthWind 資料庫來練習,進入Enterprise Manager之後,怎麼樣都無法查知各資料表的關連性,亦即無法查知資料表中foreign key 和其參考到的其他資料表欄位。而資料庫圖表並不會為已建立好的關連自動產生圖表,所以就只能對每個資料表一一探知,例如探知orders資料表就要在Query Analyzer 中輸入:     sp_help orders 這樣就會傳回orders 的資訊,當中包含該表的所有foreign key,以及該foreign key 所參考到的其他資料表欄位,然後我必須把foreign key的資訊記錄下來。 對NorthWind資料庫的每個資料表都 sp_help 一次,並記錄所有foreign key的資訊後,再全部整理一次後,就能知道各資料表的關係。當然,如何想以圖表方式呈現各資料表的關係,還得自行在圖表物件中一一繪製,這樣又實在太累人了! 如果一個新的資料庫管理員要接手一個資料庫,而舊的管理員又沒有替資料庫建立圖表,再加上資料庫的資料表特別多和關連性又特別複雜時,新的管理員要瞭解這個資料庫,豈不是要搞很久才搞出個頭緒來? 真的沒有其他方法可以快速瞭解NorthWind資料庫中各資料表的關連性嗎?    感謝在先
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-12 00:07:50 IP:211.22.xxx.xxx 未訂閱
Cancer兄所言,的確是所有舊系統維護(由其不是自己開發的系統)人員的痛!,其實不只如此,光是瞭解系統資料庫中各資料表的結構與關係,也不足以讓人能夠將整個系統瞭解透徹,因為其中還牽扯了不少資料作業方式與流路的問題!所以,一個完善的系統不是光只有功能齊全而已,如果要能可長可久,後繼的人能夠精進與提升,一定還要有好的文獻才可以,文獻中除了說明各系統功能之外,還要說明各資料表欄位的意義與之間的關係,當然還不可以少掉全系統的流程圖!對於 >)
cancer
高階會員


發表:58
回覆:319
積分:190
註冊:2004-07-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-12 19:39:43 IP:210.201.xxx.xxx 未訂閱
Stallion大大, 我剛試過,在建立圖表時選取所有非system的資料表,圖表建立精靈就會自動按照資料庫的外鍵定義來建立資料表之間的關連箭號,並在旁邊標示出外鍵的名稱。 這也蠻方便,不過,在箭號旁邊標示兩個相關欄位的名稱,才會比較實用一點。所以,我就自己從外鍵定義中找出兩個欄位的名稱,再自行加入文字標誌,把欄位名稱填入文字標誌中。 NorthWind資料庫的結構算是很簡單了,因為其中有一大部份是"死巷關係",亦即,從某個資料表開始觀察關連性時,會看到一條龍、永不回頭的關係。 雖然要自行輸入欄位名稱,但至少對小型資料庫而言,不失是方法之一。 謝謝您
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-06-12 23:40:26 IP:220.132.xxx.xxx 未訂閱
Hi, 找一些有 reverse engineering 的工具軟體, 如 visio enterprise 版本, erwin, power designer 等, 能夠將這些資料轉為較易讀的圖檔.    這是在 google 上找的一些相關工具, http://www.databaseanswers.com/modelling_tools.htm http://www.casestudio.com/enu/download.aspx    以下就是用 case studio 2 產生的資料,
cancer
高階會員


發表:58
回覆:319
積分:190
註冊:2004-07-31

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-06-13 22:38:17 IP:210.201.xxx.xxx 未訂閱
Timhuang 大大, 謝謝您,我會查看看。
系統時間:2024-11-25 18:38:42
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!