Liest die nächste Zeile einer Tabelle und gibt sie an den Server zurück.
| 
            virtual int rnd_next
          ( | buf ); | 
| byte * | buf ; | 
        Dies ist die Methode rnd_next.
      
        Diese Methode wird für jede Zeile des Tabellenscans aufgerufen.
        Am Ende der Datensätze sollten Sie
        HA_ERR_END_OF_FILE zurückgeben. Die
        Zeilendaten werden in den Puffer geladen. Die Feldstruktur für
        die Tabelle ist der Schlüssel, um Daten so in den Puffer zu
        schreiben, dass der Server sie verstehen kann.
      
        Wird von filesort.cc,
        records.cc,
        sql_handler.cc,
        sql_select.cc,
        sql_table.cc und
        sql_update.cc aufgerufen.
      
            buf
          
Keine Rückgabewerte.
        Dieses Beispiel stammt von der Speicher-Engine
        ARCHIVE:
      
int ha_archive::rnd_next(byte *buf)
{
  int rc;
  DBUG_ENTER("ha_archive::rnd_next");
  if (share->crashed)
      DBUG_RETURN(HA_ERR_CRASHED_ON_USAGE);
 
  if (!scan_rows)
    DBUG_RETURN(HA_ERR_END_OF_FILE);
  scan_rows--;
  statistic_increment(table->in_use->status_var.ha_read_rnd_next_count,
		      &LOCK_status);
    current_position= gztell(archive);
  rc= get_row(archive, buf);
 
  if (rc != HA_ERR_END_OF_FILE)
    records++;
  DBUG_RETURN(rc);
}
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.

