Hva er innfødte spørsmål?
Innfødte spørsmål er spørsmål uttrykt gjennom Structured Query Language (SQL) og er kortfattede så vel som typesikkere metoder for C ++ og Java-spørringsuttrykk. Bruken av native spørsmål er gunstig i bruk av spesifikke funksjoner i databaser, inkludert spørringshint og visse databasespesifikke funksjoner. De er også nyttige for å gi rene migrasjonsveier direkte fra applikasjoner ved bruk av SQL- eller Java -databasetilkobling (JDBC ™). Innfødte spørsmål brukes til å gi resultater bestående av skalarverdier, enheter eller begge deler. Disse typer spørsmål støtter bruk av Native SQL i en måldatabase.
Disse typer spørsmål kan overvinne et strengbasert applikasjonsprogrammeringsgrensesnitt (APIs) mangler. Spørsmål av denne typen brukes i en objektdatabase, der objektets utholdenhet er en vanlig oppgave for programmerere og et vanlig trekk i databasen. Ikke-innfødte spørsmål virker imidlertid utenlandske i programmer som er objektorienterte på grunn av at uttrykkene deres er enkleStrenger og objektgrafer som inneholder ispedd strenger.
Native spørsmål hjelper til med å lindre problemene som står overfor i databaser ved å uttrykke en spørring i Java og C ++. Spørsmål kan skrives uten API eller et tilpasset spørringsspråk. I tillegg er et integrert utviklingsmiljø (IDE) i stand til å hjelpe til med å redusere skrivefeil. De innfødte spørsmålene ville da være typesikkert til det fulle og i stand til å få tilgang til en IDes refactoring-funksjoner. Endelig kan spørsmålene kjøres, testes og prototypes mot vanlige minnesamlinger uten bakenden av en database.
Spørsmålene, og deres tilhørende SQL, er ikke nødvendigvis overførbare på tvers av andre databaser. Ved avkastning av mange enheter av en bestemt innfødt spørsmål, bør disse samme enhetene spesifiseres, så vel som kartlagt, til kolonneresultater i SQL -setninger i et Metadata Definition Mapping -program. Som et resultat, disseE kan brukes til å kartlegge JDBC -resultater ved vedvarende kjøretid i forventede objekter. Bruk av navnparameter er aldri definert for denne typen spørsmål, og bærbare applikasjoner kan bare bruke binding av posisjonsparametere for innfødte SQL -spørsmål. Støtte av sammenføyninger er begrenset til forhold mellom enkeltverdier.
For å bruke innfødte spørsmål, må en programmerer beskrive et SQL -resultatsett. Å beskrive resultatsettet hjelper et program som EntityManager -kartkolonner på egenskaper til enheter. Skalarresultater kan også defineres og blandes med andre enhetsresultater, noe som resulterer i en retur av en alias -kolonne. Når resultatsettene er beskrevet, er utførelse av innfødte spørsmål mulig.