【发布时间】:2011-07-13 11:30:19
【问题描述】:
如果我在正确的轨道上,请指导我。
我正在尝试为Mobile Bill 为个人X 创建数据库架构,以及如何为表Bill_Detail_Lines 定义PK、FK。
以下是假设:
- 每个客户都有一个唯一的关系编号。
-
Bill_no将是独一无二的,因为它每个月都会生成。 -
X每个月都可以拨打同一个手机号码。 -
Account_no与每个手机号码相关联,并且不会改变。
架构:
table: Bill_Headers
Relationship_no - int, NOT NULL , PK
Bill_no - int, NOT NULL , PK
Bill_date - varchar(255), NOT NULL
Bill_charges - int, NOT NULL
table: Bill_Detail_Lines
Account_no - int, NOT NULL
Bill_no - int, NOT NULL , FK
Relationship_no - int, NOT NULL, FK
Phone_no - int, NOT NULL
Total_charges - int
table: Customers
Relationship_no - int, NOT NULL, PK
Customer_name - varchar(255)
Address_line_1 - varchar(255)
Address_line_2 - varchar(255)
Address_line_3 - varchar(255)
City - varchar(255)
State - varchar(255)
Country - varchar(255)
【问题讨论】:
-
你的电话号码真的是 int 吗?在德国,即手机号码以 0 开头。为什么您的 bill_date 字段是 varchar?
-
bill_date 应该是日期。我真的对冻结模式很感兴趣,然后在这些领域进行研究。
标签: sql create-table