Limitations on tables w/o primary keys


Just noticed that :-

“DELETE operation is unsupported on tables without primary key. Also rows in tables without primary key may appear in different order on different nodes. As a result SELECT…LIMIT… may return slightly different sets.”

has been removed from but is still present in the pdf manual. Has that limitation been removed and the pdf not yet updated or is the web page wrong?



This limitation was lifted when this feature was added:

However, it’s still generally a best practice to have explicit PKs. If you don’t define them, then you will have in implicit hidden 6-byte PK in your Innodb table taking up space that you can’t use for any querying. Innodb is very much optimized towards PK lookups, so it benefits you to have one you can query by.