外键提供引用完整性。外键列中的数据经过验证-该值只能是外键中定义的表和列中已经存在的值。这对于阻止“不良数据”非常有效-某人无法输入所需内容-
数字,ASCII文本等。这意味着数据已被规范化-
重复值已被识别并隔离到自己的表中,因此无需担心关于在文本中区分大小写的问题…并且值是一致的。这就引出了下一部分-外键是用于将表连接在一起的工具。
您对用户拥有的项目的查询将无法工作-
USERS当查询中没有对该表的引用时,您将引用该表中的一列,并且在将其链接到
PROJECTS表之前,没有子查询可用于获取该信息。您真正使用的是:
SELECt p.* FROM PROJECTS p JOIN USERS u ON u.user_id = p.creatorWHERe u.username = 'John Smith'
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)