select
, where
, join
oder orderBy
stehen zur Verfügung.users.json
).addAutoincrementField('id')
. Bei jedem insert()
wird automatisch eine eindeutige ID vergeben.getLastInsertId()
erhältst du die letzte vergebene ID direkt nach einem Insert.addEncryptedField('password')
. Die Daten werden dann per AES verschlüsselt gespeichert.isEncryptedField('password')
, um das zu ermitteln.removeEncryptedField('feldname')
– die system.json wird entsprechend angepasst.addAutoHashField('hash', 'sha256')
konfigurieren, das dann automatisch aus anderen Daten berechnet wird.autoincrement
erzeugt eine laufende ID, autohash
generiert einen Hash basierend auf dem Datensatz.truncate('tabelle')
. Dabei wird die Datei neu geschrieben und ggf. angelegt.getRawTableData()
erhältst du den Original-JSON-Inhalt der Tabelle als String.users.system.json
im gleichen Verzeichnis wie users.json
.addEncryptedField
oder addAutoincrementField
zu tun.INNER
, LEFT
, RIGHT
und FULL OUTER JOIN
. Beispiel: ->join('kunden', 'id', 'LEFT')
.where([['field', 'like', '%suchwort%']])
kannst du flexible Bedingungen definieren.from('tabelle')
. Für JOINs kannst du weitere Tabellen verbinden.select(['id', 'name'])
um nur bestimmte Felder zurückzugeben.flock()
werden Datei-Zugriffe exklusiv gelockt, um Konflikte bei gleichzeitigen Zugriffen zu verhindern.tabelle.system.json
mit autoincrement
, autohash
oder encrypt
.products.json
) und binde JsonSQL ein. Demos helfen beim Einstieg.getRawTableData()
oder var_dump()
debuggen. Ein erweiterter Debug-Modus ist in Planung.