2012-01-21 11 views
0

[OK]を、ので、私は学生ですし、データベースとの非常に限られた経験がありますが、私は割り当てのための運送会社用のテーブルを構築しようとしています。現在、私は(それは私が画像を投稿することができません)[属性を持つ]以下の10個のテーブルを持っている:RDBMSの配送テーブルと受信テーブルはどのように設定する必要がありますか?

Table1 
====== 
Customer[PK - CustId, CustAddressId(FK from table "Address"), CustBusName,....], 

Table2 
====== 
PU_Man [PK - PUManId, PUDate, PUComments, PUPackageId (FK from table "Package"), 
PUCustId (FK from table "Customer"), PUDTID (FK from table DriverTruckRef)] 

Table3 
====== 
Del_Man [PK - DelManId, DelDate, DelComments, 
DelPackageId (FK from table "Package"), 
DelCustId (FK from table "Customer"), 
DelDTId (FK from table DriverTruckRef)] 

Table4 
====== 
Truck [PK - TruckVin#, TimeLoggedOut, .....], 

Table5 
====== 
Driver [PK - DriverId, DriverFN, DriverLN, 
DriverRoute# (FK from table "Route"),....] 

Table6 
====== 
DriverTruckRef [PK - DTId, DriverId (FK from table "Driver")] 

Table7 
====== 
Address [PK - AddressId, 
AddressCustId (FK from Customer table), 
Address1, Address2, City, State, Zip] 

Table8 
====== 
Package [PK - PackageId, PackagePUCondition, 
PackagePUProblems, PackageDelCondition, PackageDelProblems] 

Table9 
====== 
Route [PK - RouteId, AddressId (FFK from table "Address")] 

Table10 
======= 
Payment [PK - PaymentId, 
PaymentCustomerId (FK from customer table), 
PaymentPackageId (FK from "Package" table), 
PaymentType, PaymentInfo, PaymentAmt, 
PaymentAddressId (FK from table "Address")] 

私はこれはおそらく経験している人のためにそこに最も簡単なシナリオですけど、私は期待しています誰かがこの作品を細断して大きな画像を見ることができます。私の誇りの細分化が始まる前に、私は1:1/n:m/1:m/etcの関係が間違っていることを知っていますが、テーブルの視覚的表現が必要です。 PK/FKはもっと重要です。

また、私は多分考えています私は同様に支払テーブルを打破する必要があります。

どれ批判やアドバイスをいただければ幸いです。

+0

もう一度お試しください!この質問を遠隔から答えることさえするために、ここには何もありません。 :)画像をアップロードするためには(スパム防止対策として)ある程度の担当者が必要だと思うので、テキストの中でそれをすべてやる必要があります。投稿を編集して詳細を入力します。タグの近くにある編集リンクをクリックします。 –

+0

ありがとうございます。私はポストが追加された後にそれを実現しました。それは私に警告していない:(私はちょうど不便をおかけし申し訳ありません。あなたの画像を表示し、どのような援助をありがとうございましたできれば –

+0

はそんなに容易になるだろう。 –

答えて

0

多分これはあなたが始められるでしょう - すべての行は、テーブルで、テーブルの詳細は省略されている、それはあなたが望む柔軟性に応じて、かなり複雑に得ることができますキー

Customer 
Customer*-Addresses* 
Addresses 
Packages 
Destinations[Addresses,Packages] 

DeliveryLog[Package,Driver,Route] 
DeliveryAttemptLog[...] 


Trucks 
Trucks*-Drivers* 
Drivers 

Hubs 
Hubs*-Trucks* 
Hubs*-Drivers* 
Locations[Packages,Hubs] 
Loadings[Packages,Trucks] 


Routes 
Routes*-Addresses* 

Packages*-Routes* 

に焦点を当てました。

+0

それは私の割り当て問題です、それはかなり恣意的であるようです。彼が私になることをどのように技術的に思っているのかわからない情報ありがとうございました。 PackagesRoutesRefの目的は何ですか? –

+0

ルートが重複している可能性があります。そのため、ロード・オン・トラック・イベントの前にパッケージを多くの(潜在的な)ルートに割り当てることができます。そして、あなたのインストラクターは、すべての可能性をいかにうまく引き出すことができるかを見極めるために、意図的にオープンエンドの問題を提示しています。 –

+0

また、物事の上に全体のスケジューリング/割り当てシステムがあると考える必要があります。したがって、「典型的なルート」の表と、実行するルート(その日)とルートを割り当てる方法を決定するメカニズムがあります。一般的に、時間について考える必要がありますが、それは雌犬です。 –

関連する問題