Re: Firebird in Netzwerk
Hallo,
deswegen ja auch #27. OK, hätte ich fett machen sollen. Heiko |
Re: Firebird in Netzwerk
Jep, und vielleicht groß und rot :D
|
Re: Firebird in Netzwerk
Ich habe mir dein Beispiel angesehen.
:gruebel: Vorschlag: Du nimmst Dir eine Stunde Zeit und ich erkläre Dir die Grundlagen und lernst erst einmal in einem Formular Daten anzuzeigen und zu editieren. Gruß Alfred |
Re: Firebird in Netzwerk
Hallo,
ich weiss icht, warum immer diese furchtbaren Beispiele in Netz rumlungern.
Delphi-Quellcode:
Warum ist ständig eine Transaktion offen ?
procedure TForm1.commit;
begin if IBTransaction1.InTransaction then begin IBTransaction1.Commit; IBTransaction1.StartTransaction; end; IBTable1.Open; end; OK, wegen dem DBGrid ;) Das ist schlecht, gerade unter Firebird (MGA, aber lassen wird das). Ich würde hier erst mal versuchen, wegen dem DBGrid auf entweder 2 Transaktionen T1: readonly, wenn es das bei IBX schon gibt, für alles, was am DBGrid hängt T2: für Updates oder TClientDataSet für das DBGrid (also lokaler Cache) Nach jedem Update wird es wieder neu gefüllt. Ich persönlich bin ein Feind des DBGrid ;) Ich lade die Daten in ein normales TStringGrid (eigene TList). Heiko |
Re: Firebird in Netzwerk
Zitat:
Gruß Alfred |
Re: Firebird in Netzwerk
Hallo,
ich nicht, zuviel drumrum . Hatte es mal vor Jahren in der Planung, aber zu viel Umstellungsaufwand. Stehst du dort auf der Gehaltsliste ? ;) Heiko |
Re: Firebird in Netzwerk
Zitat:
Auf meine alten Tage nimmt mich doch keine EDV-Firma mehr :wink: Ich hatte ein Datengrid gesucht, dass meine besonderen Wünsche in Bezug auf Cursorsteuerung und Editfunktionen unterstützt. Ich habe mir ein Erfassungsprogramm für Buchungssätze erstellt und konnte nur durch Einstellungen im OI meine gesamten An- forderungen für das Erfassen der Daten damit abdecken. Ich hatte mir eine andere Darstellung des Summenfeldes vorge- stellt und der Support hat mir dass ohne murren und Kosten vollständig realisiert. Gruß Alfred |
Re: Firebird in Netzwerk
Hallo Leute, ich bin hier ganz schön am suchen und habe nun mal zeos probiert aber ich denke ich habe bei der installation was versaut. ich bekomme wenn ich im entwurf ein ZQuery auf Activ setze einen Fehler: Zugriffsverletzung bei Adresse 40003E88 in Modul 'Vcl50.dpl' Lesen von Adresse 00000000
|
Re: Firebird in Netzwerk
Es gibt wohl mit Delphi 5 und bestimmten Zeosversionen Probleme.
Nimm doch für den Grundlagentest SQLdirect(SqlDirD5.exe). Die Trial ist kostenlos und nervt nur mit einer Hinweismeldung, die man wegklicken kann und läßt sich sehr einfach installieren. Ich bekomme keine Vermittlungsprovisionen :wink: Gruß Alfred |
Re: Firebird in Netzwerk
so einfach ist das dann auch nicht, ich will das Programm dann auch nutzen. es ist ja nicht nur das Testen und Lernen.
|
L
Es geht doch erst einmal darum, dass Du verstehst wie das alles
zusammenhängt. Dann kannst Du doch erst entscheiden welche Komponente für Deine Zwecke wirklich geeignet ist und Du wegen 145$(SQLDirect) oder 100$(IBDAC) viel Zeit in eine kostenlose Komponente(ZEOS) steckts, vor allem bei dem aktuellen Dollarkurs. Wenn das Programm für interne Zwecke ist, wirst Du feststellen, das der eine Klick beim Start des Programms nun wirklich überhaupt nicht stört. Gruß Alfred |
Re: Firebird in Netzwerk
N´abend
Ja Zeos braucht wirklich mehr Einarbeitungszeit. Em leichtesten ist wohl der Einstieg mit FIB, aber da ist Hansa wohl der man fürs Marketing. Im nachfolgenden Beispiel ist so ein Mittelweg mit der UIB-Komponente genommen worden. Man muß sich aber zudem mit der Generator / Trigger Logik für neue datensätze einarbeiten. Das braucht seine Zeit. SQLite ist sicher leichter aber eben Kostenprlichtig. Zugriff auf Firebird Server Grüße in die Runde Martin |
Re: Firebird in Netzwerk
SQLite ist nicht kostenpflichtig!
|
Re: Firebird in Netzwerk
Also ich greife mit IB Komponenten auch auf Firebird zu und bei Funkt alles Perfekt (Edit,Insert,Delete, usw)
Ich mache es folgendermassen: Für jede Tabelle : TIBTable,TIBTransaction,TIDStoredProc (bei abfragen noch TIBQuery) Die Datenbank hab ich mit dem EMS SGL Manager erstellt Da ich zufaul bin hab ich mir zum Hinzufügen,Editieren eigene Procedure geschrieben:
Delphi-Quellcode:
So.....so habe ich es hinbekommen, bei mir Funkts.
//Neu
procedure Neu_Datensatz(Table : TIBTable); begin Table.Edit; Table.Append; Table.Edit; end; //Speichern procedure Speichern_Datensatz(Table : TIBTable; Trans : TIBTransaction); var Rec : Integer; begin Rec := Table.RecNo; //Datensatz merken Table.Edit; Table.Post; IBDatabase1.ApplyUpdates([Table]); Trans.Commit; Trans.StartTransaction; Table.Open; //Datensatzpos wird zurückgesetzt Table.RecNo := Rec; //Wieder Datensatz auswählen end; //Löschen procedure Loschen_Datensatz(Table : TIBTable; Trans : TIBTransaction); begin Table.Edit; Table.delete; Datenbank.IBDatabase1.ApplyUpdates([Table]); Trans.Commit; Trans.StartTransaction; Table.Open; end; //Habe in der Firebird-Datenbank eine Stored Procedure drinnen, die im EMS SQL Manager für jede ID erstellt wird, so aktiviere ich sie //ID Setzen //Bei TIDTable bei BeforPost rein procedure Set_ID(Table : TIBTable; Getter : TIBStoredProc); begin if (Table.State = dsInsert) then begin Getter.ExecProc; Table.FindField('ID').AsInteger := Getter.ParamByName('ID').AsInteger; end; end; Hab auch Serverversion und übers Netzwerk gehts auch. :mrgreen: Gruß NickelM |
Re: Firebird in Netzwerk
Aber wie schon öfters erwähnt sollte man Table-Komponenten für ein richtiges DBMS nicht verwenden.
|
Re: Firebird in Netzwerk
Warum nicht? :gruebel: :gruebel: :gruebel:
Bei mir funkts doch auch oder hat das mit irgendwas anderem zutun? |
Re: Firebird in Netzwerk
Hallo,
IBTable.Open macht ein Select * auf die Tabelle, holt sich über mehrere Abfragen noch alle Infos zur Tabelle (Felder, Indizes, Constraints). Und das alles, obwohl du viell. nur ein INsert(Append) machen willst. Ab einer bestimmten Datenmenge dauert das alles dann "etwas". Falls es einen TIB_SQLMonitor gibt, kann man das schön ansehen. Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz