Datenbank-Tabelle mit DB-API anlegen
Eingetragen von AndyLicht (260)
am 24.08.2014 - 10:45 Uhr in
am 24.08.2014 - 10:45 Uhr in
Hallo Forum,
ich lege mit Hilfe der DB-API zusätzliche Datenbank-Tabellen an, leider scheitere ich daran eine "echte" Timestamp und Boolean Spalte anzulegen. Eventuell kann mir da jemand einen Rat geben.
Hier wird mein Schema generiert:
$schema = array(
'description' => 'Wetterstation',
'fields' => array(
'uid' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE),
'timestamp' => array('type' => 'int', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => '0'),
'timestamp2' => array('pgsql_type' => 'timestamp', 'unsigned' => TRUE, 'not null' => TRUE), //Hier happert es leider gewalltig, soll eigentlich auch zum Schlüssel werden
't00' => array('type' => 'float', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => '0'),
't01' => array('type' => 'float', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => '0'),
't02' => array('type' => 'float', 'unsigned' => TRUE, 'not null' => TRUE, 'default' => '0'),
),
);
return $schema;
Vielen Lieben Dank für eure Hilfe
Andy
p.s. heute sollten wir alle lieber das gute Wetter geniessen
- Anmelden oder Registrieren um Kommentare zu schreiben
hook_schema genauer anschauen
am 24.08.2014 - 22:44 Uhr
hook_schema kümmert sich um die Verwaltung von Tabellen.
Der type "pgsql_type" sieht mir ad hoc nicht kompatibel aus (siehe diese Data types-Liste). Per default bemühen wir uns in Modulen möglichst unabhängig von einer bestimmten Datenbank zu sein und die Kommunikation zwischen Drupal der Datenbank dem DB-Layer in Drupal zu überlassen. Wenn man allerdings ganz spezielle Anforderungen hat, für die man ganz bestimmte Funktionen in der Datenbank benötigt, muss man sich aber evtl. auch ganz am DB-Layer vorbei "mogeln". Da hört dann aber auch mein Know How auf.
# DrupalCenter-Moderator # https://www.drupal.org/u/c-logemann
# CTO der Nodegard GmbH: CMS Security & Availability Operations / Wir unterstützen IT-Abteilungen, Agenturen, Freiberufler:innen
Hi Carsten, laut
am 25.08.2014 - 07:03 Uhr
Hi Carsten,
laut https://www.drupal.org/node/159605 können Feldtypen auch explizit für die Datenbankentypen angelegt werden, nur irgendwie erschließt sich mir das nicht, bzw. ich habe diesbezüglich ein Brett vorm Kopf. Mit Hilfe dieser Funktion müsste ich für Feld-Typen die noch nciht in der API aufgeführt werden, alle Arten angeben.
mfg
Andy
p.s. ich habe dir über drupal.org ein Mail bezüglich des Frankfurter Drupal Treffens im September geschrieben, gibt es schon ein Datum mit Ort und Uhrzeit?
Aller Anfang ist schwer...
sehr spezielle Anforderung
am 25.08.2014 - 11:25 Uhr
Offensichtlich gibt es Möglichkeiten, den DB-Treiber von Drupal in einem eigenen Modul zu erweitern. Das spricht mal wieder für unser tolles Framework. Aber da müsste ich mich selbst aufwendig einarbeiten. Bei so speziellen Anforderungen ist auf drupal.org eher Hilfe zu finden. In Bereichen, in den Bücher oder sogar API-Beschreibungen eher dünn gesät sind, hilft oft ein Blick in bestehende Module, die in dem Bereich operieren. Ich würde mir in diesem Fall zuerst mal verschiedene Module anschauen die besondere Funktionen von Postgres nutzen.
p.s. ich habe dir über drupal.org ein Mail bezüglich des Frankfurter Drupal Treffens im September geschrieben, gibt es schon ein Datum mit Ort und Uhrzeit?
Das Termin-Schema, von dem wir selten abweichen ist "immer der 2. Donnerstag im Monat" als unser Drupal-Donnerstag. Da wir auch beim letzten Meetup im August nicht mit Sessions überflutet werden, wird es wohl wieder ein Stammtisch am 11. September. Der Termin wird noch in der Rhein-Main.Gruppe auf g.d.o eingetragen und dort auch der Ort bekannt gegeben, wenn er fest steht. Es wird aber sehr wahrscheinlich wieder in der frankfurter Innenstadt oder Nähe Hauptbahnhof sein.
# DrupalCenter-Moderator # https://www.drupal.org/u/c-logemann
# CTO der Nodegard GmbH: CMS Security & Availability Operations / Wir unterstützen IT-Abteilungen, Agenturen, Freiberufler:innen