나는 자원 봉사 관리 시스템을 구축하고있어 좀 DB 설계 문제에 봉착 : 자원 봉사자 계정에 가입 할 수 있습니다 :데이터베이스 설계 문제 :
과정을 설명하기 위해. 자원 봉사자는 시간을 프로젝트에보고합니다 (각 자원 봉사자는 여러 프로젝트를 가질 수 있습니다). 자원 봉사자들이 자원 봉사자들에게 보상을주기 위해 특정 금액에 가까워지면 자원 봉사 감독자에게 통보됩니다.
예 : 자원 봉사자는 무료 티셔츠를받습니다.
내가 겪고있는 문제는 하나의 보상 프로필이 여러 프로젝트와 관련되어있을뿐만 아니라 하나의 보상 프로필이 "다중 계층"이 될 수있는 방식으로 DB를 디자인하는 방법입니다. 이것에 대한 중요한 점은 보상 구조가 변경되어 하드 코드 될 수 없다는 것입니다.
"멀티 티어"보상 프로필의 의미는 다음과 같습니다. 자원 봉사자는 10 시간 동안 무료 티셔츠를받습니다. 40 시간 자원 봉사를 한 자원 봉사자는 무료로 50 달러 감사 수표를받습니다.
나는 나 자신을 생각해 냈습니다. 하나의 행을 각 보상 프로필과 관련시키는 보상 프로필 테이블이 있어야합니다.
rewardprofile:
rID(primary key) - int
description - varchar/char(100)
details - varchar/file (XML)
는 제외하고, 단지 주제에있는 동안, DB 필드 항목은 파일 수 있는가? 그래서
rewards:
rID(primary key) - int
rpID (references rewardsProfile) - int
numberOfHrs - int
rewardDesc - varchar/char(100)
rewardsprofile:
rpID(primary key) - int
description
각 행이고 다음 그들에게 보상을 결합하는 제 보상 프로파일 테이블 함께 항목으로
OR
한 소정 양 관한 보상 테이블을 가지고 보상 이것은 다음과 유사 할 수 있습니다 :rewardsprofile:
rpid | desc
rp01 | no reward
rp02 | t-shirt only
rp03 | t-shirt and check
rewards
rid | rpID | hours | desc
r01 | rp02 | 10 | t-shirt
r02 | rp03 | 10 | t-shirt
r03 | rp03 | 40 | check
이 문제는 새로운 것은 아니지만 google fu는 약하고 ph 이것은 의미있는 방식으로 이것을 소망한다. 내 솔루션 (해킹 및 슬래시)보다 형식화 된 솔루션이 있어야한다고 생각합니다. 누군가가이 문제가 무엇인지 또는 어떤 해결책을 제시 할 수 있다면 그것은 부 풀릴 것입니다. 모든 시간 내 주셔서 감사합니다!
건배, 예레미야 Tantongco
가능한 기존 스키마에 대해 databaseanswers.com을 살펴 보셨습니까 ?? –