我知道这是非常基本的但是在这里。
我想知道您如何知道哪些列是没有主键的表中的主键?是否有技术或其他东西我应该阅读?
提前谢谢
答案 0 :(得分:4)
您需要查看数据结构。
主键必须:
如果它是
就会有所帮助检查您的数据 - 哪些列或一组列可以满足这些要求?
一旦你拥有了这些潜在的主键(“候选键”) - 想想你将如何访问数据,以及可能需要与这个实体相关联的其他数据 - 什么才有意义键?您想以其名称引用您的部门吗?可能不是一个好主意,因为这个名字可能会拼写错误,它可能会随着时间的推移而改变等等。通过该部门的办公地点?也是不好的选择。但是像一个独特的“部门ID”这样的东西可能是一个好主意。
如果在实际数据中没有找到任何适当的列可以作为主键并且有意义,那么引入“代理键”是一种常见的做法 - 一个额外的列,通常是{{ 1}}(通常类似于“自动增量”INT)将作为每行的人工标识符。如果你这样做,一个常见的最佳做法是永远不要在任何数据屏幕上显示该人工密钥 - 它对你的系统用户没有任何意义 - 所以甚至不要向他们展示。
检查这些要求以及大量经验将帮助您找到正确的主键。
答案 1 :(得分:1)
这实际上取决于数据本身。您需要确定哪些字段可用于唯一地标识记录。
答案 2 :(得分:0)
在SQL服务器中,它旁边会有一个密钥。它通常是ID或带有ID的东西。它也是独特的,通常是增量。当你在SQL中查看它时。在桌面设计下的服务器管理工作室,您将看到它与Lil键图标的列列表顶部。
这是一个唯一的标识符,可以解密每个记录。有点像每个人都有一个ssn。