假设我的数据库中有以下表:
tables http://www.freeimagehosting.net/uploads/a5ef036857.png
现在我的所有查询都依赖于Company表.为每个其他表提供(冗余)关系以简化我的SQL查询是不是一种坏习惯?
编辑1:背景是框架的使用问题.见Django: limiting model data.
编辑2:没有元组会改变他的公司.
编辑3:我不写mySQL查询.我使用抽象层(django).
解决方法
@H_502_15@ 这是不好的做法,因为您的冗余数据必须独立更新,因此必须冗余.一个充满潜在错误的过程. (甚至必须单独分配和维护自动级联)通过引入此关系,您可以有效地反规范化数据库.为了提高性能,有时需要进行非规范化,但从你的问题来看,这听起来只是简化了sql.
使用其他机制来抽象数据库的复杂性:视图,存储过程,UDF