線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:799
推到 Plurk!
推到 Facebook!

再次請教...命名的問題?

答題得分者是:cmj
SKYSTAR
中階會員


發表:76
回覆:198
積分:64
註冊:2002-06-10

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-03-15 16:00:08 IP:210.66.xxx.xxx 未訂閱
各位先進好.... 想請教各位....您們一般在命名上面,是如何拿捏的呢? 最主要是想看看在同樣的名稱,但是在不同資料中的命名方式....這樣說可能您 們會聽不懂....舉個例子好了.... 客戶資料表中的客戶編號....CU_CUSTID 銷貨單資料表中的客戶編號..ST_CUSTID 其它資料表中的客戶編號....OT_CUSTID 您們是用類似上面的方式來命名嗎?...也就是整個系統中,不管有多少資料表中, 是只要有客戶編號這一個名稱的欄位,一律要區分出來,也就是客戶編號這個中文 是重覆的(指標題),但是所相對應的欄位名稱,則像唯一鍵值一樣...不準重覆!! 還是說一律使用CUSTID....就來代表客戶編號....呢? 也就是指如果在銷貨單 中,如果想關聯到客戶資料表時,不管是用query還是其它方式,此時在sql或是 其它程式碼部份,是會看到兩個CUSTID的....當然啦,還是得加上資料表名稱來 區分不同的CUSTID....!! 以上兩種方式...不知各位大都採取那一種...? 又誰好誰壞呢? THANKS!!
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-03-15 21:17:11 IP:61.66.xxx.xxx 未訂閱
引言: 各位先進好.... 想請教各位....您們一般在命名上面,是如何拿捏的呢? 最主要是想看看在同樣的名稱,但是在不同資料中的命名方式....這樣說可能您 們會聽不懂....舉個例子好了.... 客戶資料表中的客戶編號....CU_CUSTID 銷貨單資料表中的客戶編號..ST_CUSTID 其它資料表中的客戶編號....OT_CUSTID 您們是用類似上面的方式來命名嗎?...也就是整個系統中,不管有多少資料表中, 是只要有客戶編號這一個名稱的欄位,一律要區分出來,也就是客戶編號這個中文 是重覆的(指標題),但是所相對應的欄位名稱,則像唯一鍵值一樣...不準重覆!! 還是說一律使用CUSTID....就來代表客戶編號....呢? 也就是指如果在銷貨單 中,如果想關聯到客戶資料表時,不管是用query還是其它方式,此時在sql或是 其它程式碼部份,是會看到兩個CUSTID的....當然啦,還是得加上資料表名稱來 區分不同的CUSTID....!! 以上兩種方式...不知各位大都採取那一種...? 又誰好誰壞呢? THANKS!!
以下是我個人在從DOS設計以來的經驗 為了對各種來源型態命名, 實在很傷透腦筋, 往往要查到工業字典, 商業字典 來找該專有名稱, 所以後來我都用編號, 例如客戶資料D1000, 銷貨資料 D8000 則客戶資料的客戶編號 D1000CustID, 銷貨資料的客戶編號D8000CustID.... 就算銷貨資料中有明細資料檔(D8001), 則為 D8001CustID, 其實寫了十來個 程式都是用固定的檔案, 所以以編號命名就不會說記不往或分不清了, 而且對 MASTER-DETAIL的資料庫特好用 D8000, D8001. D8002...一目了然! 其實命名沒有所謂好壞, 如果你要考慮國際化, 系統化可以找有關程式設計 正規化方面的書籍來看, 否則在台灣程式設計是蠻封閉的環境, 你只要做到 自己可以看得懂的就可以了,
cmj
高階會員


發表:15
回覆:242
積分:226
註冊:2002-06-12

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-03-16 00:15:37 IP:211.76.xxx.xxx 未訂閱
1.檔案欄位命名最好以有意義的名稱來命名以免日後維護或別人交產生困擾. 2.CUSTID在任一TABLE都是CUSTID,多數軟體都是如此像DELPHI所附DEMO也是如此,至於為什麼,系統寫多了就能體會主要還是維護,交接容易,不必去記CUSTID在那一TABLE叫什麼,另一TABLE又叫什麼,這欄位作用是在TABLE做串連用對於寫程式較客易記.可以參考以下程式碼,去比較那一種較容易. (1) SELECT A.DNO,A.CUSTID,B.CUSTNAME FROM ST A LEFT JOIN CU B ON B.CUSTID=A.CUSTID LEFT JOIN OT C ON C.CUSTID=A.CUSTID (2) SELECT A.DNO,A.ST_CUSTID,B.CUSTNAME FROM ST A LEFT JOIN CU B ON B.CU_CUST_ID=A.ST_CUST_ID LEFT JOIN OT C ON C.OT_CUST_ID=A.ST_CUST_ID 以上是個人經驗,提供參考
SKYSTAR
中階會員


發表:76
回覆:198
積分:64
註冊:2002-06-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-03-16 01:18:40 IP:210.66.xxx.xxx 未訂閱
感謝兩位的見解!! 看來....還是統一用一個相同名稱的命名方式,應該會比較容易記得住.... 其實本來是沒有這個問題的.... 但是在看了某些
系統時間:2024-05-13 4:47:32
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!