Liest und verändert SQLite-Datenbanken direkt als Datei — ganz ohne Datenbank-Server. Damit lassen sich Stammdaten, Listen oder kleine Tabellen dauerhaft speichern, durchsuchen und pflegen.
Block-Einstellungen
Gelten für den ganzen Modul-Block (im Editor oben im Inspektor, in YAML direkt unter dem Modulnamen).
Feld
Typ
Pflicht
Beschreibung
datei
Text
ja
Pfad zur .db/.sqlite-Datei. Existiert sie nicht, wird sie automatisch angelegt (außer bei nur-lesen).
nur-lesen
Wahrheit
—
Standard false. Bei true werden alle schreibenden Aktionen gesperrt; die Datei muss bereits existieren.
transaktion
Wahrheit
—
Standard false. Bei true werden alle Block-Aktionen in eine Transaktion geklammert: Commit am Block-Ende, Rollback bei Fehler.
Aktionen
abfragelesend
Führt ein SELECT aus und liefert alle Ergebniszeilen als Liste von Objekten zurück.
Eingaben
Feld
Typ
Pflicht
Beschreibung
sql
Text
ja
SQL-SELECT-Anweisung. Benannte Parameter mit $name oder @name.
parameter
Objekt
—
Benannte Werte für die Platzhalter im SQL (schützt vor SQL-Injection).
Ausgaben (über ergebnis:)
zeilen
Liste der Ergebniszeilen; jede Zeile ist ein Objekt aus Spaltenname und Wert.
skalarlesend
Führt eine Abfrage aus und liefert nur den ersten Wert der ersten Zeile (z.B. eine Summe oder Anzahl).
Eingaben
Feld
Typ
Pflicht
Beschreibung
sql
Text
ja
SQL-Anweisung, deren erster Wert zurückgegeben wird.
parameter
Objekt
—
Benannte Werte für die Platzhalter im SQL.
Ausgaben (über ergebnis:)
wert
Der erste Wert der ersten Ergebniszeile, oder leer wenn kein Ergebnis.
ausführenverändernd
Führt ein veränderndes Statement (INSERT/UPDATE/DELETE) aus und meldet die Anzahl betroffener Zeilen.
Eingaben
Feld
Typ
Pflicht
Beschreibung
sql
Text
ja
Veränderndes SQL-Statement.
parameter
Objekt
—
Benannte Werte für die Platzhalter im SQL.
Ausgaben (über ergebnis:)
betroffene
Anzahl der durch das Statement geänderten Zeilen.
stapel-ausführenverändernd
Führt mehrere SQL-Anweisungen hintereinander aus (z.B. ein ganzes Schema-Skript).
Eingaben
Feld
Typ
Pflicht
Beschreibung
sql
Text
ja
Eine oder mehrere SQL-Anweisungen, durch Semikolon getrennt.
datensatz-anlegenverändernd
Fügt einen neuen Datensatz in eine Tabelle ein (ohne SQL zu schreiben) und gibt die neue Zeilen-ID zurück.
Eingaben
Feld
Typ
Pflicht
Beschreibung
tabelle
Text
ja
Name der Zieltabelle.
felder
Objekt
ja
Spalte-zu-Wert-Zuordnung für den neuen Datensatz.
Ausgaben (über ergebnis:)
id
Die rowid des neu angelegten Datensatzes.
datensatz-aktualisierenverändernd
Aktualisiert vorhandene Datensätze, die der WHERE-Bedingung entsprechen, und meldet die Anzahl.
Eingaben
Feld
Typ
Pflicht
Beschreibung
tabelle
Text
ja
Name der Zieltabelle.
felder
Objekt
ja
Spalte-zu-Wert-Zuordnung der neuen Werte.
wo
Text
ja
WHERE-Klausel, die festlegt, welche Zeilen geändert werden. Parameter mit $name.
wo-parameter
Objekt
—
Benannte Werte für die Platzhalter in der wo-Klausel.
Ausgaben (über ergebnis:)
betroffene
Anzahl der aktualisierten Zeilen.
datensatz-löschenverändernd
Löscht alle Datensätze, die der WHERE-Bedingung entsprechen, und meldet die Anzahl.
Eingaben
Feld
Typ
Pflicht
Beschreibung
tabelle
Text
ja
Name der Zieltabelle.
wo
Text
ja
WHERE-Klausel, die festlegt, welche Zeilen gelöscht werden. Parameter mit $name.
wo-parameter
Objekt
—
Benannte Werte für die Platzhalter in der wo-Klausel.
Ausgaben (über ergebnis:)
betroffene
Anzahl der gelöschten Zeilen.
zeilen-zählenlesend
Zählt die Datensätze einer Tabelle, optional gefiltert durch eine WHERE-Bedingung.
Eingaben
Feld
Typ
Pflicht
Beschreibung
tabelle
Text
ja
Name der Tabelle.
wo
Text
—
Optionale WHERE-Klausel zum Filtern. Parameter mit $name.
wo-parameter
Objekt
—
Benannte Werte für die Platzhalter in der wo-Klausel.
Ausgaben (über ergebnis:)
anzahl
Anzahl der gezählten Zeilen.
tabelle-erstellenverändernd
Legt eine neue Tabelle mit den angegebenen Spalten und Spaltentypen an.
Eingaben
Feld
Typ
Pflicht
Beschreibung
tabelle
Text
ja
Name der zu erstellenden Tabelle.
spalten
Objekt
ja
Spaltenname-zu-Typdefinition (z.B. 'INTEGER PRIMARY KEY', 'TEXT NOT NULL').
wenn-nicht-vorhanden
Wahrheit
—
Standard false. Bei true wird die Tabelle nur angelegt, falls sie noch nicht existiert (IF NOT EXISTS).
tabelle-löschenverändernd
Entfernt eine Tabelle samt allen Daten aus der Datenbank (DROP TABLE).
Eingaben
Feld
Typ
Pflicht
Beschreibung
tabelle
Text
ja
Name der zu löschenden Tabelle.
tabelle-existiertlesend
Prüft, ob eine Tabelle in der Datenbank vorhanden ist.
Eingaben
Feld
Typ
Pflicht
Beschreibung
tabelle
Text
ja
Name der zu prüfenden Tabelle.
Ausgaben (über ergebnis:)
existiert
Wahr, wenn die Tabelle existiert, sonst falsch.
tabellen-listelesend
Liefert die Namen aller Benutzertabellen der Datenbank (interne sqlite_-Tabellen ausgenommen).
Ausgaben (über ergebnis:)
tabellen
Alphabetisch sortierte Liste der Tabellennamen.
spalten-listelesend
Liefert die Spaltendefinitionen einer Tabelle (Name, Typ, Pflichtfeld, Standardwert, Primärschlüssel).
Eingaben
Feld
Typ
Pflicht
Beschreibung
tabelle
Text
ja
Name der Tabelle, deren Spalten beschrieben werden sollen.
Ausgaben (über ergebnis:)
spalten
Liste von Objekten mit name, typ, pflicht, standard und primaerschluessel.
vacuumverändernd
Räumt die Datenbankdatei auf und gibt ungenutzten Speicherplatz frei (VACUUM).
Beispiele
Kundentabelle anlegen und Datensatz einfügen
Erstellt eine Tabelle 'kunden' (falls noch nicht vorhanden) und legt einen neuen Kunden an, dessen neue ID zurückgegeben wird.
Liest alle Kunden aus Berlin parametrisiert aus und ermittelt zusätzlich deren Gesamtzahl.
sqlite
abfrage
sqlSELECT name FROM kunden WHERE ort = $stadt ORDER BY name
parameter.stadtBerlin
ergebnisberliner
sqlite
zeilen-zählen
tabellekunden
woort = $stadt
wo-parameter.stadtBerlin
ergebnisanzahl_berlin
- sqlite:
datei: "C:\\Daten\\firma.db"
nur-lesen: ja
aktionen:
- abfrage:
sql: "SELECT name FROM kunden WHERE ort = $stadt ORDER BY name"
parameter:
stadt: "Berlin"
ergebnis: berliner
- zeilen-zählen:
tabelle: kunden
wo: "ort = $stadt"
wo-parameter:
stadt: "Berlin"
ergebnis: anzahl_berlin