Visa mot lagrad procedur
Visningar och lagrade procedurer är två typer av databasobjekt. Visningar är typ av lagrade frågor som samlar in data från en eller flera tabeller. Här är syntaxen för att skapa en vy
skapa eller byt ut visningsnamn
som
select_statement;
En lagrad procedur är en förkompilerad SQL-kommandosats som lagras i databasservern. Varje lagrad procedur har ett anropsnamn, som används för att anropa dem i andra paket, procedurer och funktioner. Detta är syntaxen (i ORACLE) för att skapa en lagrad procedur, skapa eller ersätt procedur procedurenamn (parametrar)
är
Börja
uttalanden;
undantag
undantagshantering
slutet;
Se
En vy fungerar som en virtuell tabell. Det döljer ett valt uttalande i kroppen. Det här utvalda uttalandet kan vara mycket komplext, vilket tar data från flera tabeller och vyer. Därför, med andra ord, är en vy en namngiven select-sats, som lagras i databasen. En vy kan användas för att dölja logiken bakom tabellrelationerna från slutanvändare. Eftersom en vy är ett resultat av en lagrad fråga, behåller den ingen data. Den samlar in data från bastabellerna och visar. Visningar spelar också en viktig roll för datasäkerhet. När tabellägaren bara behöver visa en uppsättning data för slutanvändare är det en bra lösning att skapa en vy. Visningar kan delas in i två kategorier
- Uppdaterbara vyer (vyer som kan användas för INSERT, UPDATE och DELETE)
- Icke-uppdaterbara vyer (vyer som inte kan användas för INSERT, UPDATE och DELETE)
Uppdaterbara vyer kan inte innehålla följande, Ställ operatörer (INTERSECT, MINUS, UNION, UNION ALL)
DISTINKT
Gruppaggregerade funktioner (AVG, COUNT, MAX, MIN, SUM, etc.)
GRUPP AV Klausul
BESTÄLLNING AV Klausul
ANSLUTA AV Klausul
Börja med klausul
Samlingsuttryck i en vald lista
Underfråga i A Select List
Gå med i frågan
Lagrad procedur
Lagrade procedurer heter programmeringsblock. De måste ha ett namn att ringa. Lagrade procedurer accepterar parametrar som användarinmatning och process enligt logiken bakom proceduren och ger resultatet (eller utför en specifik åtgärd). Variabla deklarationer, variabla tilldelningar, kontrolluttalanden, loopar, SQL-frågor och andra funktioner / procedur / paketsamtal kan finnas i proceduren.
Vad är skillnaden mellan visning och lagrad procedur? Låt oss se skillnaderna mellan dessa två. • Visningar fungerar som virtuella tabeller. De kan användas direkt från stängning av SQL-frågor (välj), men procedurer kan inte användas från stängning av frågor. • Visningar har endast ett valt uttalande som sin kropp, men procedurer kan ha variabla deklarationer, variabla tilldelningar, kontrolluttalanden, slingor, SQL-frågor och andra funktioner / procedur / paketanrop som sin kropp. • Procedur accepterar parametrar som ska köras, men vyer vill inte att parametrar ska köras. • Inspelningstyper kan skapas från vyer med% ROWTYPE, men med procedurer kan inte posttyper skapas. • SQL-tips kan användas inuti view select-uttalandet för att optimera exekveringsplanen, men SQL-tips kan inte användas i lagrade procedurer. • DELETE, INSERT, UPDATE, SELECT, FLASHBACK och DEBUG kan beviljas för visningar, men endast EXECUTE och DEBUG kan beviljas för procedurer. |