Eine gut strukturierte Übersicht zum Mapping zwischen Gambas-Datentyp → Datenbank-Datentyp für MySQL, PostgreSQL und SQLite finden Sie unter http://gambaswiki.org/wiki/doc/db-type-mapping.
Die Datenbank-Komponente von Gambas verwaltet ein Mapping zwischen jedem Gambas-Datentyp und jedem Datentyp des zugrunde liegenden Datenbanktreibers. Diese Abbildung ist nicht bijektiv. Manchmal ist ein Gambas-Datentyp im Datenbanksystem nicht vorhanden. Häufiger ist jedoch das Gegenteil der Fall.
Aufgrund dieser Abbildung Gambas-Datentyp → Datenbank-Datentyp müssen Sie beim Design Ihrer Datenbank umsichtig sein. Um Probleme zu vermeiden, sollten Sie immer den mit Gambas mitgelieferten Datenbankmanager verwenden.
Vorsicht ist mit dem SQL-Wert NULL geboten!
In Gambas sind NULL und die ungültige Zeichenkette dasselbe, aber normalerweise ist das bei den Datenbanktreibern nicht der Fall. Gambas speichert immer NULL in der Datenbank, wenn kein dem Datentyp entsprechender Wert angegeben ist. Betrachten Sie NULL in SQL als Platzhalter für fehlende Daten. Das sollten Sie beim Schreiben Ihrer SQL-Anfragen berücksichtigen.
Mit der folgenden SQL-Anweisung suchen Sie erfolgreich nach allen Datensätzen, in denen für das angegebene DB-Feld field_name_xy kein dem Datentyp entsprechender Wert angegeben ist:
SELECT * FROM TABLE_NAME WHERE field_name_xy IS NULL;
Artikel