AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Firebird und IBObjects
Thema durchsuchen
Ansicht
Themen-Optionen

Firebird und IBObjects

Ein Thema von hanspeter · begonnen am 5. Jan 2007 · letzter Beitrag vom 7. Jan 2007
Antwort Antwort
Seite 1 von 2  1 2      
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#1

Firebird und IBObjects

  Alt 5. Jan 2007, 00:20
Datenbank: Firebird • Version: 2.0 • Zugriff über: Ibobjects
Hallo,
ich hatte schon mal geschrieben, dass ich inzwischen mit FB2.0 und IBObjects massive Probleme habe.
Offensichtlich funktioniert der SQL Parser nicht mehr richtig.

Ein Feldname "TEILERGEXEC" wird z.B. nicht aufgelöst und führt zu dem Fehler "Fieldname not found".
In Scripten sind zwingend Leerzeichen an syntaktisch unnötigen Stellen erforderlich.
Einige SQL Anweisungen funktionieren nur, wenn zwischen Schlüsselwort und öffnender Klammer ein Leerzeichen steht u.s.w.
Ich stehe jetzt vor dem Problem, entweder auf FB1.5 und eine funktionierende IBObjects Version zurück zu gehen oder
IBObjects in die Wüste zu schicken und auf ein funktionierendes System zu wechseln.
Dazu habe ich mir UIB bereits einmal angesehen. Mich schreckt aber der geringe Trafik auf der Webseite und der 6 Monate alte RC1 etwas ab.
Was habt ihr mit UIB für Erfahrungen?
Oder gibt es einen anderen Vorschlag für ein funktionierendes System?

Gruß Peter
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#2

Re: Firebird und IBObjects

  Alt 5. Jan 2007, 00:34
Zitat von hanspeter:
Oder gibt es einen anderen Vorschlag für ein funktionierendes System?
FIBplus = 250 EUR und Ruhe ist.
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von mikhal
mikhal

Registriert seit: 11. Sep 2003
Ort: Linz am Rhein
795 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Firebird und IBObjects

  Alt 5. Jan 2007, 05:20
Oder IBDAC von CoreLab. Zwischen 100 USD (ohne Sourcen) und 250 USD (mit Sourcen) plus MwSt.

Grüße
Mikhal
Michael Kraemer
Computer erleichtern die Arbeit...
...und die Erde ist eine Scheibe!
  Mit Zitat antworten Zitat
Lemmy

Registriert seit: 8. Jun 2002
Ort: Berglen
2.366 Beiträge
 
Delphi 10.3 Rio
 
#4

Re: Firebird und IBObjects

  Alt 5. Jan 2007, 07:37
Hi,

UIB funktionieren, ich habe diese gerade in einem kommerziellen System eingebaut, allerdings ist da die DB-Funktionalität eher gering (ist ein Berechnungsprogramm).

Die RC1 funktioniert mit der FB2.0 Final ohne Probleme. Was mich stört, ist der umständlich Wechsel der FB-Version (man muss jedesmal die Komponenten neu kompilieren). Die Anbindung an datensensitive Komponenten funktioniert mit dem AlexDataSet (habe ich aber noch nie getestet).

Wie Du bei IBObjects siehst, schützt noch nicht einmal ein kommerzieller Anbieter davor, dass Du eines Tages die Kompoenten wieder wechseln musst.

Grüße
Lemmy
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#5

Re: Firebird und IBObjects

  Alt 5. Jan 2007, 09:25
Erst mal vielen Dank für die Tips.
Für UIB hatte ich mich interessiert, da ich die Nutzung von IBObjects auf den reinen Datenbankzugriff reduziert habe.
Also Starttransaction -> Daten in speicher lesen -> Commit

Daten bearbeiten .

StartTransaction Daten rückschreiben -> Commit.

Zu FIBUS und 250€...

Für IBObjects habe ich einmal viel Geld bezahlt.
Fast 2 Jahre Updateabstand. 5 bis 6 Monate zur Fehlerbeseitigung.
Was mich bedenklich stimmt ist der Umstand, das auch bei anderen kommerziellen Komponentenherstellern, Delphi offensichtlich
immer mehr auf das Abstellgleis gerät. Neuentwicklungen und extensive Weiterentwicklung scheint nur noch unter Net zu erfolgen.


Gruß Peter
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.350 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Firebird und IBObjects

  Alt 5. Jan 2007, 09:29
Hallo Peter,

ich habe ein Altprojekt auch jetzt umgestellt und finde keine Fehler.
Einige Anpassungen musste ich vornehmen, auch auf der Datenbank.

So funktionierten z.B. solche Selects nicht mehr:

SQL-Code:
  select a.name1, b.bezeichnung from adresse a
         left join beispiel b on beispiel.id = a.beispiel_id
Dein Beispiel mit dem Feldnamen läuft bei mir auch sauber, sowohl mit IB_Query als auch mit IBOQuery.
Wenn du noch konkrete Fehler hast, würde ich das versuchen, nachzuvollziehen.

Ich muss allerdings sagen, dass für mich eine Umstellung von IBO auf UIB oder ZEOS, ja nicht einmal auf FibPlus etc. in Frage käme.

Ich würde eher Jason noch mal auf den Nerv gehen.
Wenn ich es nachvollziehen kann, kann ich mich ja auch noch über den Fehler beschweren.
Jason reagiert nicht auf jede Frage, aber Fehler hat er bis jetzt immer beseitigt.

Cu, Frank
Frank Reim
  Mit Zitat antworten Zitat
hanspeter

Registriert seit: 26. Jul 2003
Ort: Leipzig
1.350 Beiträge
 
Delphi XE2 Professional
 
#7

Re: Firebird und IBObjects

  Alt 5. Jan 2007, 09:56
Zitat von dataspider:
So funktionierten z.B. solche Selects nicht mehr:

SQL-Code:
  select a.name1, b.bezeichnung from adresse a
         left join beispiel b on beispiel.id = a.beispiel_id
Cu, Frank
Die funktionieren wenn die Bedingung in einer Klammer und zwischen on und Klammer zwingend ein
Leerzeichen ist.

In Scripten muss z.B. nach Declare Variable ein ; und Leerzeichen stehen.

Also Declare a smallint;Declare b smallint; funktioniert nicht.

Declare a smallint; Declare b smallint; funktioniert.
(Leerzeichen nach

Der obige Konstrukt wird von IBExperts erzeugt, wenn der Quelltext einer SP ausgegeben wird.

Die Anweisung Set Term .. in Scripten erzeugt einen Syntaxfehler.

Bei FB2.0 ist eine Umstellung der Datenbank insofern notwendig, da alle NEW Variablen readonly sind.

Ein SP der von einem Trigger After gesteuert wird, funktioniert nicht mehr.

Beispiel: Eintragen eines neuen Preises, danach alle offenen Bestellungen anpassen, geht nicht mehr vom Trigger
aus.


Gruß Peter
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Firebird und IBObjects

  Alt 5. Jan 2007, 10:22
Zitat:
Bei FB2.0 ist eine Umstellung der Datenbank insofern notwendig, da alle NEW Variablen readonly sind.
Ist aber sclecht und m.E. nicht sinnvoll, da so der Sinn vieler Trigger (nämlich die Korrektur falscher Werte) verhindert wird. Muß mal meine DBs darauf Testen.
Markus Kinzler
  Mit Zitat antworten Zitat
TBx
(Administrator)

Registriert seit: 13. Jul 2005
Ort: Stadthagen
1.875 Beiträge
 
Delphi 12 Athens
 
#9

Re: Firebird und IBObjects

  Alt 5. Jan 2007, 11:25
Hallo!
Zitat von hanspeter:
Bei FB2.0 ist eine Umstellung der Datenbank insofern notwendig, da alle NEW Variablen readonly sind.
Dies ist in den After-Triggern der Fall. In den Before-Triggern sind die NEW-Variablen selbstverständlich nicht readonly.
Die Änderung der NEW-Variablen in den AFTER-Triggern in Konstanten wurde durchgeführt, da es keinen Sinn macht, einen Datensatz zu ändern, wenn dessen Bearbeitung bereits abgeschlossen ist.
BeforeIndert/Edit werden vor dem Post ausgeführt, AfterInsert/Edit dannach.
Will man unbedingt nach dem Posten noch eine Änderung haben, dann muss man eben eine Update-Anweisung in den Trigger schreiben.

SQL-Code:
select a.name1, b.bezeichnung from adresse a
         left join beispiel b on beispiel.id = a.beispiel_id
Dies mag der FB2.0 generell nicht. Es wird erwartet, dass in einer Anweisung entweder immer mit alias oderf immer mit Full-Qualifier gearbeitet wird.
Hier hilft einem FB2.0 eigentlich nur, besser lesbaren Code zu erzeugen

Gruß

Thomas
Thomas Breitkreuz
Gruß Thomas
- Admin DelphiPRAXIS
- Admin Delphi-Treff
- Embarcadero MVP
  Mit Zitat antworten Zitat
Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.350 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Firebird und IBObjects

  Alt 5. Jan 2007, 11:32
Hallo Peter,

Zitat:
In Scripten muss z.B. nach Declare Variable ein ; und Leerzeichen stehen.

Also Declare a smallint;Declare b smallint; funktioniert nicht.

Declare a smallint; Declare b smallint; funktioniert.
(Leerzeichen nach

Der obige Konstrukt wird von IBExperts erzeugt, wenn der Quelltext einer SP ausgegeben wird.
Bei mir erzeugt IBExpert für jedes Declare eine eigene Zeile...

Zitat:
Bei FB2.0 ist eine Umstellung der Datenbank insofern notwendig, da alle NEW Variablen readonly sind.

Ein SP der von einem Trigger After gesteuert wird, funktioniert nicht mehr.

Beispiel: Eintragen eines neuen Preises, danach alle offenen Bestellungen anpassen, geht nicht mehr vom Trigger aus.
In After - Triggern war New IMHO auch bei FB 1.5 ReadOnly. In Before - Triggern kann ich auf New schreibend zugreifen.

Zitat:
Die Anweisung Set Term .. in Scripten erzeugt einen Syntaxfehler.
SET TERM ^ ;
funktioniert bei mir...

Bist du sicher, dass du auch die richtige Client - Dll zur FB - Version einsetzt und du die letzte Version installiert hat?

Cu, Frank
Frank Reim
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:59 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