De fleste værktøjer til afvikling af dynamisk SQL (SPUFI, QMF, DSNTIAUL med flere) viser en række som een lang record. Det betyder, at så snart en række er længere end 80 tegn skal du bladre til højre for at se resten af rækkens indhold. Du kan selvfølgelig sætte din emulator op til at arbejde med en større skærmbredde, men skærmbredden er ikke ubegrænset.
Nogle kolonner har en bredde, der er større end skærmbredden, og så kan det være irriterende, at man skal bladre frem og tilbage for at danne sig et indtryk af hele kolonnens indhold. I QMF findes der formateringsregler, der løser dette problem, men i SPUFI og andre værktøjer, der afleverer resultatet i et dataset, skal der andre metoder til at klare denne udfordring. Det kan du løse ved hjælp af følgende SQL-kald:
I dette eksempel er LONGCOLUMN måske en VARCHAR(254) eller en CHAR(254). Jeg har derfor valgt at dele kolonnen over 4 rækker angivet ved IN (1,2,3,4) med 64 tegn i hver række. Godt nok giver 4 * 64 ialt 256, men det giver ikke umiddelbart nogen problemer. Du kan kun få problemer, hvis colno * antalTegn (i eksemplet colno * 64) bliver større end kolonnens maksimale længde. Hvad der står i WHERE delen er egentlig underordnet, men ORDER BY skal indeholde colno som det sidste sorteringskriterie.
Som anden tabel i FROM delen har jeg valgt SYSIBM.SYSCOLUMNS, fordi den har kolonnen COLNO med værdierne 1 til N for alle tabeller, og jeg valgte bare en af dem, der altid findes i SYSCOLUMNS. Du kan vælge hvilken som helst tabel med en kolonne med numeriske værdier fra 1 til N. Du kan endda oprette en tabel til formålet. God fornøjelse.