AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi IBX Create Procedure

IBX Create Procedure

Ein Thema von Gruber_Hans_12345 · begonnen am 23. Feb 2006 · letzter Beitrag vom 24. Feb 2006
Antwort Antwort
Seite 1 von 2  1 2   
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.425 Beiträge
 
Delphi 2007 Professional
 
#1

IBX Create Procedure

  Alt 23. Feb 2006, 15:25
Datenbank: Firebird • Version: 1.5 • Zugriff über: IBX
Wie bzw. mit welcher IBX Komponente kann ich eine Procedure in der Datanbank erzeugen ?

SQL-Code:
SET TERM ## ;
CREATE PROCEDURE UPDATE_ARTIKEL (TEIL INTEGER)
AS
DECLARE VARIABLE ID INTEGER;
DECLARE VARIABLE MENGE INTEGER;
BEGIN
  FOR SELECT ARTIKELID, SUM(MENGE) FROM MATERIAL
             WHERE TEIL = :TEIL
             GROUP BY ARTIKELID
             INTO ID, MENGE
  DO
    UPDATE ARTIKEL SET MENGE = COALESCE(MENGE, 0) + :MENGE
           WHERE ID = :ID;
END ##
SET TERM ; ##
Habe immer das Problem, das er das TERM nicht kennt, und wenn ich die SET TERMS weglasse, dann bekomm ich einen Fehler im Blob.

In der IBConsole kann ichs erfolgreich ausführen, nur für updates, muß ich es auch per programm schaffen ...
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von MagicAndre1981
MagicAndre1981

Registriert seit: 4. Jun 2004
Ort: Nordhausen
2.214 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: IBX Create Procedure

  Alt 23. Feb 2006, 15:27
haste mal TIBScript probiert?
André
"A programmer is just a tool which converts caffeine into code", daran wirds wohl liegen, dass ich Abends nie pennen kann

Zitat von Luckie:
Nicht nur dass ihr offtopic geworden seid, jetzt werdet ihr selber im Offtopic noch offtopic
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.425 Beiträge
 
Delphi 2007 Professional
 
#3

Re: IBX Create Procedure

  Alt 23. Feb 2006, 15:29
ne, finde aber auch kein IBScript bei mir ...
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von MagicAndre1981
MagicAndre1981

Registriert seit: 4. Jun 2004
Ort: Nordhausen
2.214 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: IBX Create Procedure

  Alt 23. Feb 2006, 15:35
Dann mach mal ein Update deiner IBX-Komponenten. Die letzte die ich noch kenne ist für Delphi6 die Version 6.0.8. Schau mal auf der BDN.

André
André
"A programmer is just a tool which converts caffeine into code", daran wirds wohl liegen, dass ich Abends nie pennen kann

Zitat von Luckie:
Nicht nur dass ihr offtopic geworden seid, jetzt werdet ihr selber im Offtopic noch offtopic
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.425 Beiträge
 
Delphi 2007 Professional
 
#5

Re: IBX Create Procedure

  Alt 23. Feb 2006, 15:40
ne, update will ich keines machen, ist mir zu gefährlich, das dann wieder was nicht funktioniert ... das muß doch auch anders gehen oder ?
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von MagicAndre1981
MagicAndre1981

Registriert seit: 4. Jun 2004
Ort: Nordhausen
2.214 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: IBX Create Procedure

  Alt 23. Feb 2006, 15:52
Wieso? Da gabs nur kleine Änderungen, aber vieles wurde mit der neuen Verson besser.

Also mach das Update und dann kannst du Scripts ausführen.
André
"A programmer is just a tool which converts caffeine into code", daran wirds wohl liegen, dass ich Abends nie pennen kann

Zitat von Luckie:
Nicht nur dass ihr offtopic geworden seid, jetzt werdet ihr selber im Offtopic noch offtopic
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.425 Beiträge
 
Delphi 2007 Professional
 
#7

Re: IBX Create Procedure

  Alt 23. Feb 2006, 15:58
Da ich IBX mit Firebird 1.5 verwende (werde zwar mal auf eine andere, die auch Firebird 100% unterstüzt umsteigen, aber habe noch keine Zeit dazu) und ich deshalb vorsichtig bin mit dem Updaten von IBX, wer weiss ob dann Firebird 1.5 noch immer so gut läuft wie jetzt (Wenn du neue Features für IB 7.1 eingebaut haben ....)

Und es muß doch auch anders möglich sein (Die IBConsole gabs z.B.: ja auch vor IBX 6.08 )

kann mann eigentlich irgendwo nachschauen, welche version von IBX man benutzt ? Finde niergends sowas, auch in den Sources ist nix drinnen ...
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von MagicAndre1981
MagicAndre1981

Registriert seit: 4. Jun 2004
Ort: Nordhausen
2.214 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: IBX Create Procedure

  Alt 23. Feb 2006, 22:12
Zitat von Gruber_Hans_12345:
kann mann eigentlich irgendwo nachschauen, welche version von IBX man benutzt ? Finde niergends sowas, auch in den Sources ist nix drinnen ...
Rechte maustaste auf eine IBX-Kompo und da sollte der Punkt version auftauchen.
André
"A programmer is just a tool which converts caffeine into code", daran wirds wohl liegen, dass ich Abends nie pennen kann

Zitat von Luckie:
Nicht nur dass ihr offtopic geworden seid, jetzt werdet ihr selber im Offtopic noch offtopic
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#9

Re: IBX Create Procedure

  Alt 23. Feb 2006, 22:50
Hallo Hans,

benutze einfach eine IBSQL Komponente. Du benötigst dabei die beiden TERM Anweisungen zum Umschalten des ; nicht. So bleibt eine einzige Anwendung übrig, die du mit der IBSQL Komponente ausführen kannst.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.425 Beiträge
 
Delphi 2007 Professional
 
#10

Re: IBX Create Procedure

  Alt 24. Feb 2006, 09:26
Ne, hab da kein Version drinnen (Da steht dann nur "InterbaseExpress 6" und sonst nix)

@MrSpock: Genau so hab ichs ja schon probiert :

SQL-Code:
CREATE PROCEDURE UPDATE_ARTIKEL (TEIL INTEGER)
AS
DECLARE VARIABLE ID INTEGER;
DECLARE VARIABLE MENGE INTEGER;
BEGIN
  FOR SELECT ARTIKELID, SUM(MENGE) FROM MATERIAL
             WHERE TEIL = :TEIL
             GROUP BY ARTIKELID
             INTO ID, MENGE
  DO
    UPDATE ARTIKEL SET MENGE = COALESCE(MENGE, 0) + :MENGE
           WHERE ID = :ID;
END;
Doch auch dann bekomm ich den Fehler (beim Commit der Transaction) :
EIBInterbaseError "invalid request BLR at offset 179 bad parameter number"
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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:25 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