Forskjellen Mellom Eksplisitt Markør Og Implisitt Markør

Forskjellen Mellom Eksplisitt Markør Og Implisitt Markør
Forskjellen Mellom Eksplisitt Markør Og Implisitt Markør

Video: Forskjellen Mellom Eksplisitt Markør Og Implisitt Markør

Video: Forskjellen Mellom Eksplisitt Markør Og Implisitt Markør
Video: Narsissisme - implisitt og eksplisitt selvfølelse 2024, November
Anonim

Eksplisitt markør vs implisitt markør

Når det gjelder databaser, er en markør en kontrollstruktur som gjør det mulig å krysse over postene i en database. En markør gir en mekanisme for å tilordne et navn til en SQL select-setning, og deretter kan den brukes til å manipulere informasjonen i denne SQL-setningen. Implisitte markører opprettes og brukes automatisk hver gang en Select-setning utstedes i PL / SQL, når det ikke er noen eksplisitt definert markør. Eksplisitte markører, som navnet antyder, defineres eksplisitt av utvikleren. I PL / SQL er en eksplisitt markør faktisk et navngitt spørsmål definert ved hjelp av nøkkelordmarkøren.

Hva er implisitt markør?

Implisitte markører blir automatisk opprettet og brukt av Oracle hver gang en valgt uttalelse blir utstedt. Hvis det brukes en implisitt markør, vil Database Management System (DBMS) utføre operasjonene åpen, henting og lukking automatisk. Implisitte markører skal bare brukes med SQL-setninger som returnerer en enkelt rad. Hvis SQL-setningen returnerer mer enn én rad, vil det medføre en feil å bruke en implisitt markør. En implisitt markør blir automatisk assosiert med hvert utsagn om Data Manipulation Language (DML), nemlig INSERT, UPDATE og DELETE-setninger. En implisitt markør brukes også til å behandle SELECT INTO-setninger. Når du henter data ved hjelp av implisitte markører, kan NO_DATA_FOUND unntak heves når SQL-setningen ikke returnerer data. Dessuten,implisitte markører kan heve TOO_MANY_ROWS unntak når SQL-setningen returnerer mer enn én rad.

Hva er eksplisitt markør?

Som nevnt tidligere er eksplisitte markører spørsmål definert med et navn. En eksplisitt markør kan betraktes som en peker til et sett med poster, og pekeren kan flyttes fremover i settet med poster. Eksplisitte markører gir brukeren full kontroll over å åpne, lukke og hente data. Flere rader kan også hentes ved hjelp av en eksplisitt markør. Eksplisitte markører kan også ta parametere akkurat som en hvilken som helst funksjon eller prosedyre, slik at variablene i markøren kan endres hver gang den kjøres. I tillegg tillater eksplisitte markører deg å hente en hel rad til en PL / SQL-postvariabel. Når du bruker en eksplisitt markør, må den først erklæres med et navn. Markørattributter kan nås ved å bruke navnet gitt til markøren. Etter å ha erklært, må markøren åpnes først. Da kan hentingen startes. Hvis flere rader må hentes, må hentingsoperasjonen gjøres i en løkke. Endelig må markøren lukkes.

Forskjellen mellom eksplisitt markør og implisitt markør

Hovedforskjellen mellom den implisitte markøren og den eksplisitte markøren er at en eksplisitt markør må defineres eksplisitt ved å oppgi et navn mens implisitte markører automatisk opprettes når du utsteder en valgt uttalelse. Videre kan flere rader hentes ved hjelp av eksplisitte markører, mens implisitte markører bare kan hente en enkelt rad. Også NO_DATA_FOUND og TOO_MANY_ROWS unntak heves ikke når du bruker eksplisitte markører, i motsetning til implisitte markører. I hovedsak er implisitte markører mer sårbare for datafeil og gir mindre programmatisk kontroll enn eksplisitte markører. Også implisitte markører anses som mindre effektive enn eksplisitte markører.

Anbefalt: