Selv om pekere er den tregeste mulig måte å bevege seg gjennom data som er lagret i SQL server, kan de være nyttig når du prøver å få tilgang til bare én rad med data om gangen . I motsetning til å oppdatere uttalelser, som utfører oppgaver på mange rader med data samtidig, pekere tillate deg muligheten til å manipulere en enkelt rad uten å endre parameterne for noen av radene rundt det . For å bruke en markør i SQL, må du være i stand til å skrive en markør funksjon . Instruksjoner
en
Erklærer markøren. For å erklære en markør , må du ta med følgende kode :
erklærer @ [ variabel ] røye ( 11 ) DECLARE [ cursor_name ] CURSORFOR [ select_statement ] [ FOR READ- ONLY]
" variabel " i koden er det søkeordet du bruker , for eksempel " Etternavn ". Dette avhenger av navnene på de radene i databasen og hvilke rader du fokuserer på . Markøren navn kan være noe du ønsker å kalle det . De fleste bruker noe enkelt , for eksempel " C1 " for å utpeke en markør . SELECT-setningen for markøren din kan være noen velger uttalelse regelmessig brukt i SQL .
2
Åpne markøren. Åpning markøren er en enkel bit av koden . Hopp en linje under slutten av koden din for å erklære markøren , så bare skriv " OPEN ", en plass og markøren navn.
3
Hent dataene. Legg igjen en linje under "Åpne " statement før du starter din " Fetch " statement. Følgende er " Fetch " kode som utnytter kun informasjon som allerede er dekket : en
HENT NESTE FRA [ markør -name ] INTO @ [ variabel ] MENS @ @ FETCH_STATUS = 0BEGIN
4
Utvid og avslutte "Hent kommandoen. " Du vil bruke koden under , fylle i variabelen og markøren navnet igjen .
PRINT @ [ variabel ] HENT NEXT FROM [ markør -name ] INTO @ [ variabel ] END
5
Steng markøren. Markøren vil ikke fungere skikkelig hvis den ikke er lukket. For å lukke markøren , hoppe over en linje etter "END " i " Fetch " kode og skriv " CLOSE markør - navn. " På linjen rett under det, skriv " deallocate markør - navn. " Dette lukker markøren.
6
Kjør markøren. Når markøren uttalelsen er fullført, skriver du " GO "-kommandoen på slutten av markøren til å utføre .