AFAIK žádný takový jedinečný interní identifikátor (řekněme jednoduché ID řádku) neexistuje.
můžete možná být schopen spustit SELECT
bez jakéhokoli řazení a poté získat n-tý řádek pomocí LIMIT
. Za jakých podmínek je použití spolehlivé a bezpečné, by měl mySQL Guru potvrdit. Pravděpodobně nikdy není.
Zkuste si pohrát s phpMyAdmin , webový frontend k mySQL. Je navržen tak, aby si poradil se špatně navrženými stoly bez klíčů. Pokud si dobře pamatuji, používá vše sloupců, kterých se v takových případech může dostat:
UPDATE xyz set a = b WHERE 'fieldname' = 'value'
AND 'fieldname2' = 'value2'
AND 'fieldname3' = 'value3'
LIMIT 0,1;
a tak dále.
To samozřejmě také není zcela bezpečné pro duplikáty.
Jediný nápad, který mě napadá, je přidat klíčový sloupec za běhu a po dokončení aplikace jej odstranit. Je to nápad, který vyvolává husí kůži, ale možná lepší než nic.