OBS/Adminhilfe/SQLite: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Für diese Seite wurde eine Zugriffsbeschränkung eingerichtet. Falls du diese Nachricht siehst, bist du nicht berechtigt, diese Seite einzusehen.
Thiel (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „{{ZugriffOBS}} <div><font size ="3"> =SQLite= Ab Delphi XE10 kann ein TxDB-Objekt für verschiedenste Datenbanken erstellt werden. '''Unit Base.xDatabase''' …“) |
(→SQLite) |
||
| Zeile 8: | Zeile 8: | ||
DBType = (DB_MDB, DB_MSSQL, DB_PARADOX, DB_IB6, DB_MYSQL, DB_SQLite); | DBType = (DB_MDB, DB_MSSQL, DB_PARADOX, DB_IB6, DB_MYSQL, DB_SQLite); | ||
Derzeit wird MySql und SQLite | Derzeit wird MySql und SQLite unterstützt. | ||
==Erstellen eines TxDB-Objektes== | ==Erstellen eines TxDB-Objektes== | ||
Version vom 5. September 2016, 10:18 Uhr
Dies ist eine zugriffsgeschützte Seite.
FAQ
- System Überwachung
- DEP deaktivieren
- Darstellung unter Windows 7
- Einwahl auf Windows 2000 Server
- Preislisten
- Datenbank Sicherung
- Customize
- Zentrale
- Support Macro
- Service Debug
- Historienprotokoll (Datenänderung OBS)
- Fernwartungsprobleme
- Startparameter
- Fehler beim Kassenabschluss
- Diverse Informationen
Häufige Fehler FAQs
Allgemeines
Wiki Hilfe
Syntax
Wiki-Gruppen Benutzerlisten
MySQL
Programmierung und Mergen
Delphi
Einrichtung
Git/SmartGit
Programm Update
PAX
Nützliche Funktionen
SteVe
OBS-Administration / Installation
Einrichtung
MySQL
Dienste
Kasse/Notfallkasse
Replikation
Zentrale
Fleet-Management einrichten
OBS Umzug
Admin Funktionen
Service Firmen
F10
- A ras.pbk
- B Command Line Interpreter
- C File Zilla Benutzer XML erzeugen
- D1 OBS_UPDATE.EXE zum OBS Update Server hochladen
- D2 SUPPORT_MACRO zum OBS Update Server hochladen
- H1 Remote Service Protokoll-Übersicht (Alles)
- H Remote ServiceProtokoll-Übersicht
- I Remote Service Commands
- I1 (Admin) Globaler Hinweis für Updates
- J Liste der OBS Updates
- K Angemeldete Service Firmen
- L Systeminformationen einlesen
- M Kundendaten anzeigen
- M1 Kundendatenbankinformationen anzeigen
- N Kundendaten einlesen
- O Kunden-Update Informationen anzeigen
- P Modul Registrierung OBS
- Q App Verwaltung
- S1 Firmen Statistik Protokolle OBS
- S2 Statistik Notfallkassen
O Support
D Programmierer-Tools
V Crypt Autologin Edit
J Update Marko Lib/Pmode/Script Lib
kundenspezifische Anpassungen
OBS Protokolle
OBS DEMO
Shop-Administration
modified eCommerce
modified eCommerce 2.x
modified eCommerce 1.06
Amazon
VShop 4.0
Kundeninformationen
SQLite
Ab Delphi XE10 kann ein TxDB-Objekt für verschiedenste Datenbanken erstellt werden.
Unit Base.xDatabase DBType = (DB_MDB, DB_MSSQL, DB_PARADOX, DB_IB6, DB_MYSQL, DB_SQLite);
Derzeit wird MySql und SQLite unterstützt.
Erstellen eines TxDB-Objektes
oSQLiteDB := TxDB.Create(DB_SQLite);
Es genügt dem Create die Datenbankengine als Parameter mit zu geben (Standard ist DB_MYSQL). Das Objekt weiß dann von selbst wie die Zugriffe auf die Datenbanken zu regeln sind. Dieses Objekt kann mit den gewohnten Funktionen auf die Datenbank zugreifen.
Beispiel-Zugriff
//DB Objekt auf SQLite erstellen
//Dadurch weiß das Objekt automatisch wie die Zugriffe sein müssen
oSQLiteDB := TxDB.Create(DB_SQLite);
//Mit Datenbank verbinden
oSQLiteDB.UserPassword := oApplication.DBPassWort;
DB_ConnectToDatabase(oSqliteDB, TPath.Combine(ExePath(), 'obs.sdb'));
//Datensatz auslesen
ShowMessage('TEST DB_Read erfolgreich: '+DB_ReadSQLValue(oSQLiteDB, 'S_ANRED', 'AR_NAME', 'AR_NR = ' + DB_SQLVal(cNr)));
Beispiel-Neu anlegen und Zugriff
//DB Objekt auf SQLite erstellen
//Dadurch weiß das Objekt automatisch wie die Zugriffe sein müssen
oSQLiteDB := TxDB.Create(DB_SQLite);
//Struktur einlesen und den Objekt zuweisen
DB_ReadUpdateStructFile(TPath.Combine(ExePath(), 'Sys\ObsAPPDB.sys'),oTabel,aTabelFlags, oUserTabel);
oSQLiteDB.oTable := oTabel;
oSQLiteDB.aTableFlags := aTabelFlags;
oSQLiteDB.oUserTable := oUserTabel;
//Passwort für DB festlegen
oApplication.DBPassWort := 'TEST1234';
//Datenbank erstellen
//diese funktion ist nicht in Baselib enthalten und muss für Apps aus Passlib kopiert werden und angepasst werden,
//evtl auch mit compiler deriktiven lösbar (Gauge)
if DB_Server_UpdateStruktur(TPath.Combine(ExePath(), 'Sys\ObsAPPDB.sys'),
TPath.Combine(ExePath(), 'obs.sdb'),
,
,
oApplication.DBPassWort,
,
,
0,
,
DB_SQLite) then begin
ShowMessage('Erstellen erfolgreich');
end else begin
ShowMessage('Erstellen Fehler');
end;
//Mit Datenbank verbinden
oSQLiteDB.UserPassword := oApplication.DBPassWort;
DB_ConnectToDatabase(oSqliteDB, TPath.Combine(ExePath(), 'obs.sdb'));
//Datensätze in Tabelle schreiben
xData := qSQlInit(oSqliteDB,'S_ANRED');
cNr := DB_NeuNum(oSqliteDB,'S_ANRED','AR_NR');
xData.qSet('AR_NR' ,cNr);
xData.qSet('AR_NAME' ,'TEST');
xData.qSet('AR_BRIEF' ,);
xData.qSet('SYS_ZENTRALE',);
xData.qSet('sys_uid' ,RandomNumString(10));
xData.SaveData(NEW_RECORD);
qSqlFree(xData);
xData := qSQlInit(oSqliteDB,'S_ANRED');
cNr := DB_NeuNum(oSqliteDB,'S_ANRED','AR_NR');
xData.qSet('AR_NR' ,cNr);
xData.qSet('AR_NAME' ,'TEST15');
xData.qSet('AR_BRIEF' ,);
xData.qSet('SYS_ZENTRALE',);
xData.qSet('sys_uid' ,RandomNumString(10));
xData.SaveData(NEW_RECORD);
qSqlFree(xData);
//Datensatz auslesen
ShowMessage('TEST DB_Read erfolgreich: '+DB_ReadSQLValue(oSQLiteDB, 'S_ANRED', 'AR_NAME', 'AR_NR = ' + DB_SQLVal(cNr)));
//Datensätze über XQuery auslesen
if DB_SOpen(oSQLiteDB, 'SELECT * FROM S_ANRED LIMIT 3', oSQLiteQuery) then begin
while not(oSQLiteQuery.Eof) do begin
ShowMessage('TEST xQuery erfolgreich: ' + oSQLiteQuery.A2C('AR_NAME'));
oSQLiteQuery.Next;
end;
end else begin
ShowMessage('TEST xQuery Fehler');
end;