【发布时间】:2017-12-07 19:15:40
【问题描述】:
假设我有一些表格,例如...
国家
id name
1 Cyprus
2 India
状态
id name country_id
1 a 1
2 b 2
3 c 2
城市
id name state_id
1 x 1
2 y 2
3 z 3
4 p 2
页面
id name slug status
1 ab a-b 1
2 pq p-q 0
3 abc a-b-c 1
mode_of_training
id name
1 Virtual
2 Classroom
项目
id name description
1 a something
2 b something
价格
id price currency_code
1 200 USD
2 300 AUD
3 4000 INR
优惠
id name discount
1 xyz-1 20%
2 abc-2 30%
3 pqr-3 10%
以这种方式创建表结构是否正确?这样我就可以重复使用它们 使用那里的 ID。
例如
items_relation_table
id country_id state_id city_id page_id item_id price_id offer_id status
1 0 0 0 1 1 1 0 1
2 0 0 0 1 1 1 1 0
3 1 0 1 2 2 1 2 1
4 1 0 1 3 3 2 1 1
- 现在我不需要使用表的字段值了
- 如果我想更改价格。我只会在一处更改价格
- 我正在节省字节数。
- 数据库表大小更小
但我的问题是
要获取数据,我需要使用 Joins
或者创建视图是更好的主意
或者有更好的方法来创建表结构
【问题讨论】:
-
我认为,正如您所说,在这种情况下创建视图是最好的选择。
-
这不是创建数据库的正确方法。你应该学习一些关于 E-R 模式的知识。
标签: php mysql schema cakephp-2.0 rdbms