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.
(→SQLite) |
|||
| Zeile 47: | Zeile 47: | ||
//Datenbank erstellen | //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) | //evtl auch mit compiler deriktiven lösbar (Gauge) | ||
if DB_Server_UpdateStruktur(TPath.Combine(ExePath(), 'Sys\ObsAPPDB.sys'), | if DB_Server_UpdateStruktur(TPath.Combine(ExePath(), 'Sys\ObsAPPDB.sys'), | ||
Version vom 5. September 2016, 10:22 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;