Drupal_write_record
dereine — 30. Mai 2009 - 23:24
Mithilfe der Funktion drupal_write_record kann man vorhanden Einträge in einer Tabelle bearbeiten oder neue hinzufügen/erstellen.
Neue Einträge erstellen:
$record = array();
$record['foo_value'] = 24;
$record['bar_value'] = 'test_string';
drupal_write_record('my_table', $record);
?>
Vorhanden Updaten
$record['key'] = $keyid;
$record['foo_value'] = 5*2;
drupal_write_record('my_table', $record, 'key');
Hier wird ein "update {}" durchgeführt und entsprechend nach dem Primary Key "key" geupdated.
Alles in allem, kann man mit dieser Funktion sich eine Menge Arbeit Ärger und Zeit ersparen.
Als Voraussetzung benötigt diese Funktion eine Definition der Tabelle mit hook_schema.
Noch ein Praktisches Beispiel zum Schluss, nehmen wir an wir haben eine Node Id und möchten den Titel verändern
$node = array();
$node['nid'] = $nid;
$node['title'] = 'this is a new title';
drupal_write_record('node', $node, 'nid');
?>
Und tada ohne eine zeile eigenes SQL hat man nun einen Neuen Titel für die Node


