从某种意义上说,您当然可以,您的RDBMS将允许您这样做。这个问题的答案,你是否没有问题 应该
做到这一点是不同的,虽然:在大多数情况下,有你的数据库系统之外的含义值应该 不 被选择为一个主键。
如果您知道该值在您正在建模的系统中是唯一的,则可以向表中添加唯一索引或唯一约束。但是,您的主键通常应该是一些“无意义”的值,例如自动递增的数字或GUID。
这样做的理由很简单:确实发生了数据输入错误和对似乎不可更改的事物的不频繁更改。它们变得很难固定在用作主键的值上。

从某种意义上说,您当然可以,您的RDBMS将允许您这样做。这个问题的答案,你是否没有问题 应该
做到这一点是不同的,虽然:在大多数情况下,有你的数据库系统之外的含义值应该 不 被选择为一个主键。
如果您知道该值在您正在建模的系统中是唯一的,则可以向表中添加唯一索引或唯一约束。但是,您的主键通常应该是一些“无意义”的值,例如自动递增的数字或GUID。
这样做的理由很简单:确实发生了数据输入错误和对似乎不可更改的事物的不频繁更改。它们变得很难固定在用作主键的值上。