Datenbank Tabellen und Felder anlegen

Das Beispiel zeigt wie über Installer-Scripte neue Datenbank Tabellen angelegt oder neue Felder in vorhandene DB-Tabellen eingefügt werden können.

Anwendungsbeispiel

Wenn Sie für Ihr Plugin eigene Datenbank Tabellen benötigen oder nur ein neues Feld in eine bestehende DB-Tabelle hinzufügen möchten, können Sie dies über Installer-Scripte automatisieren. 

Sourcecode

  1. /**
  2.  * Vor dem Anlegen der Tabelle wird geprüft, ob die Tabelle bereits in der
  3.  * Shop-Datenbank vorhanden ist.
  4.  */
  5. $r = $this->eCMS->plugin_siteControl->plugin_ecs->DB->table_exists('mein_plugin_abc');
  6.  
  7. if ($r['status']==false){
  8.     // Die Tabelle ist in der DB nicht vorhanden und kann jetzt angelegt werden
  9.     $r = $this->eCMS->plugin_siteControl->plugin_ecs->DB->query('CREATE TABLE mein_plugin_abc ...');
  10. } else {
  11.     // Die Tabelle ist vorhanden
  12. }
  13.  
  14.  
  15. /**
  16.  * Vor dem Anlegen des neuen DB-Feldes wird geprüft, ob das Feld in der
  17.  * DB-Tabelle bereits vorhanden ist.
  18.  */
  19. $r = $this->eCMS->plugin_siteControl->plugin_ecs->DB->table_field_exists('eos_person', 'mein_xfield_abc');
  20.  
  21. if ($r['status']==false){
  22.     // Das Feld ist noch nicht in der DB vorhanden und kann nun hinzugefügt werden
  23.     $r = $this->eCMS->plugin_siteControl->plugin_ecs->DB->query('ALTER TABLE eos_person ...');
  24. } else {
  25.     // Das Feld ist vorhanden
  26. }