Announcement

Collapse
No announcement yet.

Prozedur-Problem 2

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Prozedur-Problem 2

    bei der folgenden Prozedur bekomme ich die Meldung, dass SELECT mehrere Zeilen zurück gibt. Aber jede Select-Anweisung gibt aber nur jeweils eine Zeile zurück. Wo liegt denn mein Problem?<BR><BR>
    <PRE>

    CREATE PROCEDURE prozedur(
    att1 INTEGER,
    att2 CHAR(1),
    att3 INTEGER,
    att4 INTEGER)
    <BR><BR>
    BEGIN
    DECLARE belegt EXCEPTION FOR SQLSTATE VALUE '999910';
    DECLARE artikel INTEGER;
    DECLARE Platz_Nr INTEGER;
    <BR><BR>
    SELECT Platz
    INTO Platz_Nr
    FROM Speicherplatz
    WHERE Schlucht= att1AND LiRe = att2AND
    Etage = att3 AND Hausnr = att4;
    <BR><BR>
    SELECT Ch_ID
    INTO Charge
    FROM Charge
    WHERE Platz = Platz_Nr;
    <BR><BR>
    IF Charge IS NULL THEN
    CALL neuer_Lagerort_setzen (Platz_Nr, Charge);
    END IF;
    <BR><BR>
    IF Charge IS NOT NULL THEN
    SIGNAL Speicherplatz_belegt
    END IF;

    END;
    </PRE>

    Kann mir jemand helfen?<BR><BR>

  • #2
    Hallo,

    &gt;..Aber jede Select-Anweisung gibt aber nur jeweils eine Zeile zurück..

    das stimmt zwar - aber nur die Summe wird an das Programm zurückgeliefert.

    Um dem Problem aus dem Weg zu gehen, muss die SP in der ersten Zeile die Anweisung <b>SET NOCOUNT ON</b> aktivieren

    Comment


    • #3
      Hallo Karen,

      wenn jeder Select wirklich nur eine Zeile zurückgibt ist das durchaus sehr merkwürdig. Baue doch dennoch mal die Select-Anweisungen in Cursor und wenn die Procedur dann läuft, solltest Du sie mal genauer debuggen, denn dann gibt doch einer der Abfragen mehr als eine Zeile zurück.

      Gruss
      Nadin

      Comment

      Working...
      X