Vad är infödda frågor?
Ursprungliga frågor är frågor som uttrycks genom SQL (Structured Query Language) och är kortfattade och typsäkra metoder för C ++ och Java-frågauttryck. Användningen av ursprungliga frågor är fördelaktigt vid användning av specifika funktioner i databaser, inklusive fråga tips och vissa databasspecifika funktioner. De är också användbara för att tillhandahålla rena migrationsvägar direkt från applikationer med SQL eller Java Database Connectivity (JDBC ™). Ursprungliga frågor används för att ge resultat som består av skalvärden, enheter eller båda. Dessa typer av frågor stöder användningen av inbyggd SQL i en måldatabas.
Dessa typer av frågor kan övervinna ett strängbaserat brist på applikationsprogrammeringsgränssnitt (API). Frågor av detta slag används i en objektdatabas, där objektets uthållighet är en vanlig uppgift för programmerare och en gemensam funktion i databasen. Frågor som inte är infödda förekommer emellertid främmande i program som är objektorienterade på grund av att deras uttryck är enkla strängar och objektgrafer som innehåller varandra strängar.
Infödda frågor hjälper till att lindra problemen i databaser genom att uttrycka en fråga inom Java och C ++. Frågor kan skrivas utan ett API eller ett anpassat frågespråk. Dessutom kan en integrerad utvecklingsmiljö (IDE) hjälpa till att minska typfiler. De ursprungliga frågorna skulle sedan vara typsäkra till fullo och kunna nås av en IDE: s refaktoringfunktioner. Slutligen kan frågorna köras, testas och prototypas mot samlingar av vanligt minne utan baksidan av en databas.
Frågorna och deras åtföljande SQL är inte nödvändigtvis överförbara över andra databaser. När många enheter har återlämnats av en viss inhemsk fråga, bör samma enheter specificeras, såväl som mappade, till kolumnresultat i SQL-uttalanden i ett program för mappning av metadata-definition. Som ett resultat kan dessa användas för att kartlägga JDBC-resultat genom ihållande körtid i förväntade objekt. Användning av namnparametrar definieras aldrig för dessa typer av frågor och bärbara applikationer kan endast använda bindning av positionsparametrar för ursprungliga SQL-frågor. Stöd för sammanfogningar är begränsat till förhållanden mellan enskilda värden.
För att använda ursprungliga frågor måste en programmerare beskriva en SQL-resultatuppsättning. Att beskriva resultatuppsättningen hjälper ett program som Entitymanager-kartkolumner på enheternas egenskaper. Scalära resultat kan också definieras och blandas med andra enhetsresultat, vilket resulterar i en retur av en alias-kolumn. När resultatuppsättningarna har beskrivits är exekvering av ursprungliga frågor möjliga.