在MySQL(InnoDB)中获取基础主键

| 据我了解,当我创建一个没有主键的表时,MySQL会创建一种在内部使用的基础主键。 我正在使用一个没有主键的表,但是如果我能以某种方式访问​​此值(假设它确实存在并且可检索),它将对我的应用程序非常有用。 因此,我想知道我是否正确,认为这样的值存在于某处,以及是否有可能获得该值。 编辑:只是为了清楚起见,对于我的表此表具有递增的int属性,这将非常有用。不幸的是,它没有以这种方式实现。因此,我有点不知所措以寻求解决方案。我想做的是选择表中的每第n行(n次更改)。因此,如您所见,如果有此密钥,这将非常简单。     
已邀请:
如果表没有主键,则无法在其中指定特定行,因为无法唯一地标识项。即使您使用为每个列指定特定值的查询,也仍然不能确定仅返回单行,因为没有主键,也没有什么可以防止重复的行。 但是,主键只是唯一索引。如果一个表在其一个或多个列上具有唯一索引,并且这些列不接受NULL,则这是该表的除名称之外的所有键的主键。 如果您的表格没有唯一的列,那么您就没事了。您将必须使一列或列组合(对于复合键)唯一,或者添加一列作为表的主键。幸运的是,将列添加到MySQL表中相对容易,只需将主键自动增量列添加到现有表中即可。     

要回复问题请先登录注册