AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi 2 Stored Procedures oder eine ?
Thema durchsuchen
Ansicht
Themen-Optionen

2 Stored Procedures oder eine ?

Ein Thema von Hansa · begonnen am 29. Jan 2004 · letzter Beitrag vom 31. Jan 2004
Antwort Antwort
Hansa

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

2 Stored Procedures oder eine ?

  Alt 29. Jan 2004, 01:06
folgendes Problem:

ich muß überprüfen, ob ein Datensatz in einem bestimmten Bereich existiert. De User gibt also eine Zahl ein. Dann soll überprüft werden, ob diese Eingabe in einem zulässigen Bereich liegt. Jetzt habe ich überlegt, zunächst einmal den Bereich zu checken und danach mal nachzusehen, ob der Datensatz bereits da ist. Erschwerend kommt hinzu, daß die Eingabe über den Masterdatensatz läuft und der Rest über einen Detaildatensatz abgeklärt werden muß.

SQL-Code:
ALTER PROCEDURE INTPROCEDURE
RETURNS (
    TEST INTEGER)
AS
begin
  SELECT G.ID FROM G8 G JOIN GSTAT8 GS ON
         G.ID = GS.ID_G WHERE (G.NR >= :MIN)
INTO :TEST;
So geht es nicht !!! 8) Und bitte nicht vor Freitag hauen. *duck*
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#2

Re: 2 Stored Procedures oder eine ?

  Alt 29. Jan 2004, 02:35
SQL-Code:
select
  Count(D.ID) as Anzahl
from
  Detail D
where
  (D.Master_ID = :MasterID) and
  (D.Nr beetween :MIN and :MAX)
?

Gruß Hagen
  Mit Zitat antworten Zitat
Hansa

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

Re: 2 Stored Procedures oder eine ?

  Alt 29. Jan 2004, 18:52
Zitat von negaH:
SQL-Code:
select
  Count(D.ID) as Anzahl
from
  Detail D
where
  (D.Master_ID = :MasterID) and
  (D.Nr beetween :MIN and :MAX)
Das sieht gut aus und ist so knapp wie nötig. Allerdings noch 2 Sachen: D.NR gibt es nicht. Der Master hat eine NR, das Detail D nur einen Verweis über ID. Deshalb habe ich vorher ja das JOIN bemüht. Aber etwas wichtigeres:

SQL-Code:
begin
  select COUNT (ID) AS ANZAHL FROM D
end;
Schon das scheint syntaktisch falsch zu sein. Zumindest meckert der Parser und ich sehe nicht, warum. 8)
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#4

Re: 2 Stored Procedures oder eine ?

  Alt 31. Jan 2004, 10:06
Ich nutzte Local SQL = BDE um eine eventuell funktionierende Idee zu vermitteln, inwieweit du das auf deinen SQL Dialekt abändern musst weis ich nicht.

Das "from Detail D" bezog sich auf deine Detail Tabelle.

Select Count(xyz) as Anzahl sollte eine Abfrage erzeugen mit nur einem Datensatz und einem einzigsten Feld "Anzahl". Darin steht die Anzahl der gefundenen Detail Datensätze zum Master Datensatz mit ID = MasterID deren Nummer Nr zwischen Min und Max liegt.

Statt also eine Stored Procedure zu benutzten würde ich eine normale SQL benutzen.

Gruß Hagen
  Mit Zitat antworten Zitat
Hansa

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

Re: 2 Stored Procedures oder eine ?

  Alt 31. Jan 2004, 13:25
Daß mir so was passiert. Da kann man machen was man will und macht immer noch Anfängerfehler. Die Parameter dürfen natürlich nicht MIN und MAX heißen. Diese identifier sind vordefiniert. Deshalb konnte ich machen was ich will, es konnte einfach so nicht gehen. Die Interbase-Fehlermeldungen waren aber auch so was von nichtssagend...
Gruß
Hansa
  Mit Zitat antworten Zitat
Antwort Antwort


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 22:31 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