Einzelnen Beitrag anzeigen

Benutzerbild von joachimd
joachimd

Registriert seit: 17. Feb 2005
Ort: Weitingen
672 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Wert von LastAutoinc kann nicht ausgelesen werden

  Alt 2. Feb 2011, 10:02
SQL-Code:
CREATE PROCEDURE GetLastId
//ALTER PROCEDURE GetLastId
(
  LId Integer OUTPUT
)
BEGIN
  DECLARE LAI Cursor;
  DECLARE LastId integer;

  INSERT INTO mytable (s) VALUES ('Large');

  OPEN LAI AS SELECT LastAutoinc(Statement) AS LId FROM system.iota;
  FETCH LAI;
  INSERT INTO __OUTPUT VALUES (LAI.LId); // NULL
  LastId = LAI.LId;
  INSERT INTO __OUTPUT VALUES (LastId); // NULL
  LastId = (SELECT LastAutoInc(Statement) AS Mid FROM system.iota); // NULL
  INSERT INTO __OUTPUT VALUES (LastId); // NULL
  SELECT * FROM mytable WHERE Id = LastAutoInc(Statement); // NULL
  LastId = LastAutoInc(Statement); // NULL
  INSERT INTO __OUTPUT VALUES (LastId); // NULL
  // alles mit Toepfe anstatt system.iota // <-- NULL
  CLOSE LAI;
END;
Meine Tabelle heisst mytable und ich musste den LastId Parameter umbenennen, da es eine Variable mit demselben Namen im Script gibt. Bei mir (ARc 10.10.0.0 mit ADS 10.10.0.0) funktioniert das obige hervorragend!?
Joachim Dürr
Joachim Dürr Softwareengineering
http://www.jd-engineering.de
  Mit Zitat antworten Zitat