2010-09-28 138 views
1

我的MySql主键有问题,这是我现在正在处理的项目!varchar()主键或int主键?

我必须有一个单位名称(不是数字)作为我的数据库中的一个键,它是字母和数字的组合,我不能在INT类型中使用任何主键,它将像往常一样增加!

有什么更好?我应该坚持旧的INT,自动增量的方式?

或者最好使用VARCHAR作为主键?如果是的话,理想的数据类型是什么?

问候, Rangana

回答

5

你可以保持主键为自动增量整数列,然后添加另一列是一个VARCHAR列上有一个唯一约束。

3

首选自动递增整数主键。这是毫无意义的,所以它永远不会改变(并可能导致问题)。

2

较短的列大小对于一般密钥来说更好。因此,使用自动增量整数作为主键和名称的唯一索引。