dbase_replace_record

(PHP 5 < 5.3.0, dbase 5, dbase 7)

dbase_replace_recordErsetzt einen Datensatz in einer Datenbank

Beschreibung

dbase_replace_record ( resource $dbase_identifier , array $record , int $record_number ) : bool

Ersetzt in der Datenbank den angegebenen Datensatz record_number mit den Daten aus record.

Parameter-Liste

dbase_identifier

Die Datenbank-Verbindungskennung, die von dbase_open() oder dbase_create() zurückgegeben wurde.

record

Ein indiziertes Datenarray. Falls die Anzahl der Elemente nicht mit der Anzahl der Datenbankfelder übereinstimmt, schlägt dbase_replace_record() fehl.

Hinweis:

Vergessen Sie nicht, den deleted-Schlüssel zu löschen, wenn Sie für diesen Parameter den Rückgabewert von dbase_get_record() verwenden.

record_number

Eine Ganzzahl, die von 1 bis zur Anzahl der Datensätze in der Datenbank (wie von dbase_numrecords() zurückgegeben) geht.

Rückgabewerte

Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.

Changelog

Version Beschreibung
dbase 7.0.0 dbase_identifier ist nun eine resource statt eines int.

Beispiele

Beispiel #1 Aktualisieren eines Datensatzes in der Datenbank

<?php

// im lesen-schreiben-Modus öffnen
$db dbase_open('/tmp/test.dbf'2);

if (
$db) {
  
// den alten Datensatz holen
  
$datensatz dbase_get_record_with_names($db1);

  
// den Eintrag 'deleted' entfernen
  
unset($datensatz['deleted']);

  
// das Datumsfeld mit dem aktuellen Zeitstempel aktualisieren
  
$datensatz['Datum'] = date('Ymd');

  
// wandle den Datensatz in ein indexiertes Array um
  
$datensatz array_values($datensatz);

  
// den Datensatz ersetzen
  
dbase_replace_record($db$datensatz1);
  
dbase_close($db);
}

?>

Anmerkungen

Hinweis:

Boolesche Felder ergeben einen integer-Elementwert (0 oder 1), wenn sie per dbase_get_record() oder dbase_get_record_with_names() gelesen werden. Werden sie zurückgeschrieben, wird der Wert zu 0, so dass darauf geachtet werden muss, den Wert ordnungsgemäß anzupassen.

Siehe auch