Einzelnen Beitrag anzeigen

sancho1980

Registriert seit: 7. Feb 2006
429 Beiträge
 
#6

Re: kontrollstrukturen in sql

  Alt 8. Mai 2006, 13:06
hallo
ich versuche das gerade mit einer sp
aber da hab ich ein paar anfängerschwierigkeiten; könnt ihr mir beispielsweise sagen, was hieran falsch ist (ibexpert beschwert sich eigenartigerweise über das 'from' nach dem 'count'):

SQL-Code:
SET TERM ^ ;

ALTER PROCEDURE GETASTERM (
    NUMBER INTEGER,
    LOOKUP VARCHAR(80))
RETURNS (
    ASABK VARCHAR(10),
    ID INTEGER,
    ZSVIDEO VARCHAR(20),
    ZSAUDIO VARCHAR(20),
    ZSABBILDUNG VARCHAR(20),
    UPDAUT INTEGER,
    AUT INTEGER,
    ZSQCODE INTEGER,
    ASQCODE INTEGER,
    ASABBILDUNG VARCHAR(20),
    ASVIDEO VARCHAR(20),
    ASAUDIO VARCHAR(20),
    ZSDEF BLOB SUB_TYPE 1 SEGMENT SIZE 4096,
    ASDEF BLOB SUB_TYPE 1 SEGMENT SIZE 4096,
    ZSVERW INTEGER,
    ASVERW INTEGER,
    UPDDATUM DATE,
    REV VARCHAR(1),
    PROJ VARCHAR(20),
    DATUM DATE,
    ZSSEM VARCHAR(80),
    ZSPRGM VARCHAR(20),
    ZSABK VARCHAR(10),
    ZSTERM VARCHAR(80),
    ASSEM VARCHAR(80),
    ASPRGM VARCHAR(20),
    ASTERM VARCHAR(80))
AS
begin
  if (count(*) from (select * from dicentries where asterm = lookup) > 10) then
        FOR
            SELECT
                asabk, id, zsvideo, zsaudio, zsabbildung, updaut, aut, zsqcode,
                asqcode, asabbildung, asvideo, asaudio, zsdef, asdef, zsverw,
                asverw, upddatum, rev, proj, datum, zssem, zsprgm, zsabk,
                zsterm, assem, asprgm, asterm from dicentries into asabk, id,
                zsvideo, zsaudio, zsabbildung, updaut, aut, zsqcode, asqcode,
                asabbildung, asvideo, asaudio, zsdef, asdef, zsverw, asverw,
                upddatum, rev, proj, datum, zssem, zsprgm, zsabk, zsterm,
                assem, asprgm, asterm rows 10
        do
            SUSPEND;
  else
        FOR
            SELECT
                asabk, id, zsvideo, zsaudio, zsabbildung, updaut, aut, zsqcode,
                asqcode, asabbildung, asvideo, asaudio, zsdef, asdef, zsverw,
                asverw, upddatum, rev, proj, datum, zssem, zsprgm, zsabk,
                zsterm, assem, asprgm, asterm from dicentries into asabk, id,
                zsvideo, zsaudio, zsabbildung, updaut, aut, zsqcode, asqcode,
                asabbildung, asvideo, asaudio, zsdef, asdef, zsverw, asverw,
                upddatum, rev, proj, datum, zssem, zsprgm, zsabk, zsterm,
                assem, asprgm, asterm
        do
            SUSPEND;

end
^

SET TERM ; ^

thx,

martin

ps: gibt es auch eine einfachere variante, über eine sp ALLE felder einer tabelle auszulesen, als sie alle so mühselig zu deklarieren?
Um Rekursion zu verstehen, muss man zunächst Rekursion verstehen.
  Mit Zitat antworten Zitat