Cơ sở dữ liệu đều được tập trung ở phần WEB
Bảng User gồm các trường
- Id: khóa chính, là định danh của người sử dụng
~ 42 ~ - Password: Mật khẩu đăng nhập
- Email: địa chỉ email
- GroupId: Định danh nhóm làm việc
- Money: Số tiền hiện tại trong tài khoản
Bảng FriendList gồm
- ID: định danh.
- Name: tên người bạn.
- YahooNick: nick Yahoo.
- GtalkNick: Nick Gtalk.
- PhoneNumber: Số điện thoại.
- Accept: Đồng ý nằm trong danh sách bạn hay không? Nếu người này đồng ý thì
trường Accept có giá trị là Y hoặc G hoặc F hoặc cả 3 tương ứng với các trường hợp người này đồng ý trên nick Yahoo, Gtalk hay ở điện thoại
- Owner: Chủ sở hữu.
Bảng Bot gồm
- Id là một chuỗi số xác định định danh của các con bot. Chỉ có các con bot có id
truong này mới được phép hoạt động
- ActiveTime: Thời gian kết nối gần đây nhất, hệ thống sẽ căn cứ vào thời gian
kết nối này để kết luận con bot này hiện có đang online hay không.
Bảng Group
- Id: Định danh
- Group name: Tên nhóm
Bảng GroupACL
- Id: định danh
- GroupId: Định danh của nhóm
- Service code: mã dịch vụ
~ 43 ~ Bảng Service
- ServiceCode: mã dịch vụ
- Description: Mô tả về dịch vụ
Mối liên hệ của các bảng được thể hiện giống hình dưới:
Hình 4. 1 Mối liên hệ giữa các bảng trong CSDL
Mối quan hệ giữa các bảng
- Mỗi User chỉ thuộc một Group. Một Group có thể có nhiều User.
- Mỗi Friend chỉ thuộc một User. Một User có thể có nhiều Friend.
- Mỗi GroupACL chứa một Service và một Group
Mỗi User sẽ có một trường là GroupId. Đó là định danh của nhóm có User đó.
Mối Friend sẽ có một trường là OwnerId. Đó là định danh của User. Cho biết người bạn này thuộc User nào.
Group ACL là sự kết hợp của quan hệ nhiều - nhiều giữa 2 bảng Group và Service.
GroupACL đặc trưng cho quyền truy cập của một nhóm vào các dịch vụ. Một nhóm có
thể truy cập vào nhiều dịch vụ và ngược lại, một dịch vụ có thể được nhiều nhóm cho
~ 44 ~