我应该用外键吗? [英] Should I use foreign keys?

查看:85
本文介绍了我应该用外键吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


可能重复:

外键有什么问题?

我使用MS Sql服务器具有大约4 GB数据的大型数据库。

I use MS Sql Server with a large database about 4 GB data.

我在网路上搜索我为什么要使用外键。
现在我只索引用于连接表的键。
性能都很好,dataintegrety没有问题。

I search around the web why I should use foreign keys. by now I only indexed the keys used to join tables. Performance is all fine, dataintegrety is no problem.

我应该使用外键吗?我会用外键获得更多的表现吗?

Should I use foreign keys? Will I get even more performance with foreign keys?

推荐答案

外键实际上并没有提高性能,所有写操作的性能损失,以确保遵循约束。

Foreign key's don't actually improve performance, in fact they incur a small performance penalty on all write operations, to ensure that the constraint is followed.

要使用这些操作的原因是为了防止破坏性的写操作。如果你没有它们,错误的代码或坏的sql语句可以删除预期在那里的行。

The reason why you want to use these is to prevent destructive write operations. If you don't have them, buggy code, or a bad sql statement can remove rows that are expected to be there.

这篇关于我应该用外键吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆