sql-server – 主键是否通过?
主键提供什么独特的功能?
虽然我用舌头紧紧地刻在脸颊上的问题,我的问题是严重的.在任何火焰开始之前,我不是说建立数据库没有约束或引用完整性.但是,到目前为止,我可以告诉SQL Server可以消除主键关键字. >唯一索引涵盖,惟一性 我同意在逻辑上一个主键对数据模型有一点意图,但是呢? [讽刺]哦,我们确实得到那个小图标SSMS在设计桌子时显示! [/讽刺] 编辑 从这些评论来看,似乎很清楚,我没有像我想象的那样明确地提出这个问题.我同意主键从逻辑的角度是重要的. 我不是问: >我应该选择一个int或varchar为我的PK 我的意图是问“PK提供哪些功能,使用其他功能无法合理实施?”我不是建议在这里疯狂 – 比如使用触发器强制执行唯一性而不是唯一的约束/索引.合理是这里的一个关键词 – 使用唯一的索引/约束似乎非常类似于定义一个PK. 解决方法一个完全不同的观点:SQL是由ISO标准定义的语言.该标准具有“强制”功能和“可选一致性”功能. 如果您使用某些数据操作语言构建DBMS,那么只有在以下情况下才有权使用您的语言“SQL”: (a)您已经实现了标准规定的所有语法(“强制”功能),以及 “PRIMARY KEY”语法是一个非常古老的功能,它不是不可能的,这是“强制性”之一.从您的语言中删除这个词意味着您不能再合法地将您的语言称为SQL语言.大型商业供应商不太可能很快就会出现这样的举动. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |