sql >> Database >  >> RDS >> Oracle

Is het veilig om ROWID te gebruiken om een ​​rij/record in Oracle te lokaliseren?

"Van Oracle 8 de ROWID formaat en grootte gewijzigd van 8 naar 10 bytes. Merk op dat ROWID 's zullen veranderen wanneer u een tabel reorganiseert of exporteert/importeert. In het geval van een gepartitioneerde tabel verandert het ook als de rij migreert van een partitie naar een andere tijdens een UPDATE ."

http://www.orafaq.com/wiki/ROWID

Ik zou nee zeggen. Dit kan veilig zijn als de applicatie bijvoorbeeld ROWID . opslaat tijdelijk (bijvoorbeeld het genereren van een lijst met selecteerbare items, elk geïdentificeerd met ROWID , maar de lijst wordt routinematig opnieuw gegenereerd en niet opgeslagen). Maar als ROWID wordt op een hardnekkige manier gebruikt, het is niet veilig.



  1. Een optie toevoegen aan sql_mode in MySQL zonder bestaande instellingen te verliezen

  2. MySQL SELECTEER IN OUTFILE Exportopties

  3. MySQL:BEPERKEN met een percentage van het aantal records?

  4. Hoe PL SQL-code in Oracle te verpakken?