![]() |
Datenbank: MySQL • Version: 5.x • Zugriff über: SciBit Komponenten
Anweundung mit MySQL Online/Offline
Hallo Zusammen!
Ich konzipiere gerade einen neue Anwendung. Diese soll primär online auf einem MySQL Server arbeiten. Meine Frage an Euch ist folgende: Wenn der User kurzzeitig keinen Internet Zugang hat (DSL tot / Funkloch / wasauchimmer) soll er trotzdem weiter Eingaben tätigen, die nachdem die Verbindung wieder steht, upgedatet werden sollen. Wie würdet Ihr so etwas realisieren? Nach Möglichkeit sollte kein lokaler MySQL Server installiert werden müssen... Grüsse Frank :gruebel: |
Re: Anweundung mit MySQL Online/Offline
Du kannst ja lokal Text Dateien mit SQL Anweisungen schreiben, die bei Verbindung ausgeführt werden.
|
Re: Anweundung mit MySQL Online/Offline
Lokal MySQL embedded verwenden
|
Re: Anweundung mit MySQL Online/Offline
Zitat:
eigentlich "einfach" nur die Datasource Komponente auf einen "anderen" Server umbiegen... Frank |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Frank :gruebel: |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Steht dann ein anderer Server zur Verfügung im internen Netz??? |
Re: Anweundung mit MySQL Online/Offline
Zitat:
|
Re: Anweundung mit MySQL Online/Offline
Zitat:
Ich meinte auf eine andere Server-Komponente, die dann Lokal speichern kann. In welchem Format auch immer... Von mir aus auch XML oder XYZ... Die andere Server-Komponente sollte jedoch die "gleichen" Möglichkeiten bieten wie der SQL Server. d.h. Speichern/Ändern/Suchen/Löschen... Ein embedded MySQL wäre sicherlich ne feine Sache... Nur wie bringe ich das der Komponente bei? Frank |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Hast Du da etwas mehr Infos? mfg Frank |
Re: Anweundung mit MySQL Online/Offline
Du verbindest dich derzeit doch sicher mit User, Passwort, Port, Host usw.
dann sollte es doch kein Problem sein diese Werte zu ändern. |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Aber was soll ich da angeben? Was brauche ich für embedded MySQL? Dll? Muss etwas Installiert werden? Frank :coder: |
Re: Anweundung mit MySQL Online/Offline
Das kann ich dir auch nicht sagen, leider!
Habe mit MySQL embedded noch nicht gearbeitet, aber sicher muss etwas installiert werden. |
Re: Anweundung mit MySQL Online/Offline
Ich hab mit den
![]() Edit: Zitat:
Nein, es muss nichts installiert werden. Du lieferst die DLL mit und noch ein paar andere Dateien (Bedarf natürlich etwas Speicherplatz.). MfG freak |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Noch zu embedded es gibt nur die Version 4 nicht 5.x wie bei MySQL und kann somit auch nicht diese Funktionen außerdem Kostet die embedded immer was man kann die nämlich nicht ohne Lizenskosten erwerben (es gibt keine Freie Version). Zu deinem Problem warum speicherst du nicht wirklich alle SQL abfragen und Sendest die wenn du eine Verbindung hast. |
Re: Anweundung mit MySQL Online/Offline
Zitat:
MfG freak |
Re: Anweundung mit MySQL Online/Offline
Zitat:
|
Re: Anweundung mit MySQL Online/Offline
Zitat:
Zitat:
Frank :coder: |
Re: Anweundung mit MySQL Online/Offline
Bist du auf MySQL festgelegt?
|
Re: Anweundung mit MySQL Online/Offline
Zitat:
Hatte mal Firebird getestet, aber der kann ja nichtmal AutoINC Felder.... Frank :coder: |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Ich hätte dir FB vorgeschlagen. Für den gibt es auch einen embedded-(Server)-Client, alo ne Client-Bibliothek mit eingebauten Server. |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Zitat:
Ach ja... hatte schonmal das Problem, dass Local und Remode sich da etwas gebissen haben, weil die Komponenten erst den localen genommen haben... Frank :coder: |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Zitat:
|
Re: Anweundung mit MySQL Online/Offline
Also nimm doch ein MemTable das Arbeit im Speicher und gleich das dann immer mit der DB ab.
Werden eigentlich mehrere Client gleichzeitig auf die DB zugreifen ? |
Re: Anweundung mit MySQL Online/Offline
Hi,
Schau dir mal die neueste Version der MYDAC-Componenten an... klingt sehr interessant. Hab ich gestern geordert und probier heut abend gleich! Gruß Uwe Zitat:
![]() |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Haste das mal in Delphi? Frank PS.: @uwi1961 klingt interessant! |
Re: Anweundung mit MySQL Online/Offline
Zitat:
P.S. Die Komponenten von CoreLabs sind echt spitze! (Verwende die InterBase/FireBird-Variante) |
Re: Anweundung mit MySQL Online/Offline
Mavarik,
hast Du dir schon mal Gedanken darüber gemacht, wie du nachher deine 2 Datenbanken synchron halten willst ? Was bringt es dir lokal zu arbeiten, wenn der Online Server nicht erreichbar ist, und du deine lokalen Änderungen nicht in die Online Datenbank kriegst. |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Frank :coder: |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Zitat:
Frank :coder: |
Re: Anweundung mit MySQL Online/Offline
Die Möglichkeit mit dem Trigger ist nur ein Weg, man kann das auch per SP oder mit einer Sequenz-Komponente machen.
Oder du läßst dir die ID beim Insert zurückgeben:
SQL-Code:
[Edit: Statement vergessen]
insert into <Tabelle> <Spalten ohne PK> values ( <´Werte>) returning <PK>;
|
Re: Anweundung mit MySQL Online/Offline
Zitat:
<PK> = ID? Dann mit dem Trigger? Muß ich die SQL Befehle für den Trigger Immer vorher machen oder "merk" sich das die Datenbank, wenn ich den einmal erzeugt habe? Frank :coder: |
Re: Anweundung mit MySQL Online/Offline
Zitat:
Zitat:
Zitat:
|
Re: Anweundung mit MySQL Online/Offline
bei fb2 hat sich mit Autoinc einiges getan, insbesondere durch returning
hier mal kurz zitiert von ![]() Gruß Holger ![]() see you in paderborn :-) ------------------------------------------- Autoincrement Felder in Firebird In Datenbank-Tabellen ist regelmäßig ein eindeutiger Wert in einer Spalte (Primary Key) gewünscht. In einigen Datenbanken gibt es dazu ein Felddatentyp AutoInc oder ähnlich. Firebird und der SQL-Standard sehen zu Generatoren bzw Sequenzen vor. Hier die nötigen Schritte in Firebird bis Version 1.5 (wird in neueren Versionen vmtl. auch funktionieren) -- Generator mit Namen GEN_XYZ anlegen CREATE GENERATOR GEN_XYZ; -- Wert des Generators setzen -- ACHTUNG: Nur zum Initialisieren! SET GENERATOR GEN_XYZ TO 5; -- Generator-Wert erhöhen um 1 und auslesen select gen_id(GEN_XYZ,1) from RDB$DATABASE; -- INSERT in Tabelle TBL_XYZ mit eindeutigem Generator-Wert in der Spalte "Id" INSERT INTO TBL_XYZ ("Id") VALUES (gen_id(GEN_XYZ,1)); Der zweite Parameter der Funktion GEN_ID kann einen bel. Wert annehmen. Insbesondere kann man mit 0 einen Generator-Wert auslesen, ohne ihn zu verändern und mit -1 auch vermindern. Ab Firebird 2.0 kann man das Problem noch eleganter lösen: -- INSERT in Tabelle TBL_XYZ mit eindeutigem Generator-Wert in der Spalte "Id" INSERT INTO TBL_XYZ ("Name") VALUES ('bla') RETURNING "Id"; Bei RETURNING können mehere Feldnamen der Tabelle angegeben werden, in die ein Datensatz eingefügt wurde. Die Felder müssen nicht über INSERT eingefügt werden, sondern können z.B. auch aus DEFAULT-Werten oder Ergebnissen von TRIGGERN stammen. ------------------------------------------- |
Re: Anweundung mit MySQL Online/Offline
|
Re: Anweundung mit MySQL Online/Offline
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz