Hi har alla,
We använt ett arkiveraprogram var vi hade identifierat en lista av bordlägger att nödvändigt arkivera. De äldre att närma sig var:
1) som has ett COBOL program, som tog bort från, bordlägger en bordlägger på en time. 2) bordlägger med mer få rekord togs bort using en singelborttagnings. E.g. BORTTAGNINGS FRÅN TABLE_FIRST, VAR DATERA < STRÖMMEN DATE 3) för, bordlägger med viktigt numrerar av rekord som vi hade en markör, som hämtade rekord. För varje rekord som hämtat vi var rinnande en borttagnings query. 4) när FETCHEN för markören kördes, oss, hämtade 5000 ror e.g. FETCHEN CSR_CURSOR FÖR 5000 ROR i sänder. Datan lagrades i en samling med 5000 ror. Rekord lästes från samlingen en i sänder, och borttagningsen utfördes using dessa värderar. Efter de första 5000na har rott har tagits bort, oss har hämtat det nästa kvarteret av 5000 för detta år för table.
This som vi har ett krav, som vi har frågats att ta bort i specifikt hårt kodifiera för bordlägga från programet. Vi ska skapa en lista sparar, som innehåller en lista av bordlägger för att tas bort, och kriterierna som ska används för radering. Detta krävde en genomgång till vårt program. Denna är att närma sig som vi har för nu:
1) som vi utför borttagningsen på, bordlägger i parallell. Ett CLprogram körs för att läsa från lista sparar och för varje bordlägger listade ett borttagningsprogram är submitted. 2,) som borttagningsprogramet är ett dynamiskt program för DB2 COBOL, som vi finner i först ut det primära nyckel- för en table. 3,) EN VALD query är FÖRBEREDD using sätter in i den primära key.4,) vi använder SQLDA för att ladda lagring tilltalar för den olika uppsättningen av primärt stämm, som kan occur. 5) för varje rekord, som hämtas (using primärt nyckel- för th värderar), oss kör ett BORTTAGNINGSmeddelande. FETCHmeddelandet är FETCHEN CSR_CURSOR USING DESKRIPTOR: Förmiddagen för SQLDA.
What I inte är kompetent att uppnå using FETCHmeddelandet i point# 5, är ATT HÄMTA för 5000 ROR. Det är min överenskommelse som jag ska får den bättre kapaciteten, om jag HÄMTAR i kvarter av 5000 (detta är ett slumpmässigt numrerar precis oss valde) och kör BORTTAGNINGS för varje av de 5000 hämtade rekorden än spring en enkel FETCH och spring en BORTTAGNINGS för varje rekord, som gås tillbaka av FETCHEN. Please råder, om I-förmiddagen som är korrekt, i att anta, att ”FETCHEN i kvarter av 5000 och BORTTAGNINGS” ska, är snabbare att ”ALL FETCHEN och BORTTAGNINGS”. Om ja, hur vad är syntaxen som ska hämtas i kvarter när det använder SQLDAEN descriptor.
Thanks för hjälpen i advance.
Regards Ali.
" klar "
|