请教大神数据库关系表是否设计合理的问题
想弄个网上商城的网站
下图中黄色填充格是主键,所有相同颜色字段代表同一值域(也就是描述的是同一个东西)
请问这样建表合乎逻辑吗?主键设置合理吗? 另外有必要设置外键约束吗?我觉得是不是不需要外键约束?因为一般网站也不会删除自己注册过的会员。
请问大神有没有什么建设性的建议或者意见?^_^
数据库关系设计
[解决办法]
GUID只是个名字还是真的是Uniqueidentifier类型?
[解决办法]
我觉得 第二个 用户信息表,不应该用身份证号作为,用户信息表,因为你也可以同一个人注册2个账号的。
[解决办法]
1.我觉得 第二个 用户信息表,不应该用身份证号作为主键,用户信息表,因为你也可以同一个人注册2个账号的。
2.另外,我觉得还是可以考虑设置主键的,淘宝的数据库都是设置主键的,所以我觉得他肯定是要尊重,基本的数据库的规则的,那就是主键和外键,体现表和表之间的关系。
3.上面版主提到的guid,是否是uniqueidentifier类型,很有道理,尽量别用这种数据类型,占用36个字节,这么长的主键,不是很合理。
[解决办法]
请问这样建表合乎逻辑吗?主键设置合理吗?
--> 用户信息表应以用户名为主键.
商品信息表应有商品ID字段做主键.
另外有必要设置外键约束吗?我觉得是不是不需要外键约束?
--> 不建议使用外键约束.