Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Anweundung mit MySQL Online/Offline (https://www.delphipraxis.net/89307-anweundung-mit-mysql-online-offline.html)

Mavarik 29. Mär 2007 12:44

Re: Anweundung mit MySQL Online/Offline
 
Zitat:

Zitat von mkinzler
Doch nur halt anders.

Tja habe das mal gegoogled... Oje nix verstanden...
Zitat:

Zitat von mkinzler
Ich hätte dir FB vorgeschlagen. Für den gibt es auch einen embedded-(Server)-Client, alo ne Client-Bibliothek mit eingebauten Server.

hmm... Ok Muss ich mir dann nochmal ansehen...

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:

mkinzler 29. Mär 2007 12:53

Re: Anweundung mit MySQL Online/Offline
 
Zitat:

Ach ja... hatte schonmal das Problem, dass Local und Remode sich da etwas gebissen haben, weil die Komponenten erst den localen genommen haben...
Der lokale wird nur genommen wenn Host leer ist.
Zitat:

Tja habe das mal gegoogled... Oje nix verstanden...
Man deklariert einen Generator (eine Variable) für die Werte und sorgt mit einem Trigger oder durch Verwendung eine Sequenz-Komponente für dessen Erhöhung und Eintragen in den PK.

franktron 29. Mär 2007 12:54

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 ?

uwi1961 29. Mär 2007 14:48

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:

Disconnected Model with automatic connection control for working with data offline
Local Failover for detecting connection loss and implicitly reexecuting certain operations
Der Link dazu: http://crlab.com/mydac/

Mavarik 29. Mär 2007 14:52

Re: Anweundung mit MySQL Online/Offline
 
Zitat:

Zitat von mkinzler
Man deklariert einen Generator (eine Variable) für die Werte und sorgt mit einem Trigger oder durch Verwendung eine Sequenz-Komponente für dessen Erhöhung und Eintragen in den PK.

lol ja ganau sowas hat da gestanden....

Haste das mal in Delphi?

Frank

PS.: @uwi1961 klingt interessant!

mkinzler 29. Mär 2007 14:59

Re: Anweundung mit MySQL Online/Offline
 
Zitat:

Haste das mal in Delphi?
Nicht in Delphi, das Deklariert man in der Datenbank. In Admintools wie z.B. IBExpert kann man das auch einfach automatisieren.

P.S. Die Komponenten von CoreLabs sind echt spitze! (Verwende die InterBase/FireBird-Variante)

Jelly 30. Mär 2007 06:57

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.

Mavarik 30. Mär 2007 07:01

Re: Anweundung mit MySQL Online/Offline
 
Zitat:

Zitat von Jelly
Mavarik,

hast Du dir schon mal Gedanken darüber gemacht...

Ja, danke für den Hinweis, aber das ist bei dieser Anwendung kein Problem...

Frank :coder:

Mavarik 30. Mär 2007 07:32

Re: Anweundung mit MySQL Online/Offline
 
Zitat:

Zitat von mkinzler
Nicht in Delphi, das Deklariert man in der Datenbank. In Admintools wie z.B. IBExpert kann man das auch einfach automatisieren.

Also in der Firebird Anleitung habe ich folgendes gefunden:

Zitat:

Zitat von Firebird
SQL:
Delphi-Quellcode:
CREATE TRIGGER trgTTEST_BI_V1 for TTEST
active before insert position 0
as
begin
  new.id = gen_id( gidTest, 1 );
end
Das Grundproblem mit IDs, die in Before-Insert-Triggern zugewiesen werden, ist, dass sie die IDs serverseitig erzeugen, nachdem man den Insert-Befehl zum Server geschickt hat. Das heißt schlicht und ergreifend, dass es keinen sicheren Weg gibt, von der Client-Seite aus zu erfahren, welche ID für den gerade erzeugten Satz vergeben wurde.

Wie erzeugen ich den dann ein "SELECT LAST_INSERT_ID()"

Frank :coder:

mkinzler 30. Mär 2007 07:42

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:
insert into <Tabelle> <Spalten ohne PK> values ( <´Werte>) returning <PK>;
[Edit: Statement vergessen]


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:08 Uhr.
Seite 3 von 4     123 4      

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