Huis Persoonlijke financiën Wat is PL / SQL goed voor? - dummies

Wat is PL / SQL goed voor? - dummies

Inhoudsopgave:

Video: Top hacker shows us how it's done | Pablos Holman | TEDxMidwest 2024

Video: Top hacker shows us how it's done | Pablos Holman | TEDxMidwest 2024
Anonim

PL / SQL is de taal die moet worden gebruikt bij het schrijven van code die zich in de database bevindt. In het volgende artikel ziet u verschillende situaties waarin u PL / SQL nuttig vindt.

Gebruik van databasetriggers

A trigger is een gebeurtenis binnen de DBMS die ervoor kan zorgen dat bepaalde code automatisch wordt uitgevoerd. Er zijn vier typen databasetriggers:

  • triggers op paginaniveau kunnen activiteit initiëren vóór of na een INSERT-, UPDATE- of DELETE-gebeurtenis. Deze worden meestal gebruikt om geschiedenisinformatie en databasewijzigingen bij te houden, om overbodige gegevens gesynchroniseerd te houden of om de beveiliging te verbeteren door te voorkomen dat bepaalde bewerkingen plaatsvinden.
  • triggers op weergaveniveau zijn erg handig. Een weergave is een opgeslagen SQL-instructie die ontwikkelaars kunnen opvragen alsof het een databasetabel zelf betreft. Door INSTEAD OF triggers in een view te plaatsen, kunnen de opdrachten INSERT, MODIFY en DELETE op de view worden toegepast, ongeacht de complexiteit ervan, omdat de INSTEAD OF-trigger bepaalt wat er met de view kan worden gedaan.
  • Triggers op databaseniveau kunnen worden geactiveerd bij opstarten en afsluiten. Wanneer de database wordt opgestart, wilt u bijvoorbeeld de beschikbaarheid van andere databases of webservices testen. Voordat u een database afsluit, wilt u mogelijk andere databases en webservices ervan op de hoogte stellen dat de database offline gaat.
  • Triggers op sessieniveau kunnen worden gebruikt om specifieke informatie op te slaan. Wanneer een gebruiker zich bijvoorbeeld aan- of afmeldt, wilt u misschien code uitvoeren die de voorkeuren van de gebruiker bevat en deze in het geheugen laden voor snelle toegang. Wanneer de sessie wordt afgesloten, kan een trigger de voorkeuren opslaan voor toekomstig gebruik.

Scripten met snelheid

Wanneer u code schrijft, is het handig om een ​​gedeelte van de code te typen en uit te voeren zonder deze eerst in de database op te slaan. Oracle biedt deze mogelijkheid, die wordt ondersteund door alle PL / SQL IDE's.

Code behouden serverzijde

Het grootste deel van de PL / SQL-code wordt opgeslagen als programma-eenheden op de server. Een typische toepassing heeft veel coderegels.

Sommige programmeurs, met name webgebaseerde ontwikkelaars die werken in de J2EE of. NET-omgevingen, probeer het grootste deel van hun code in de toepassingsserver in Java (voor J2EE-ontwikkelaars) of VB te schrijven. NET (voor.NET-ontwikkelaars). Dit is geen goede oefening. In een database-applicatie is veel van de logica gewijd aan het ophalen en bijwerken van informatie. Als de code voor het uitvoeren van deze taak zich bevindt in een toepassingsserver, moet deze via een netwerk een aanvraag naar de database verzenden. Vervolgens moet de database de aanvraag verwerken en de informatie terugsturen over het netwerk om de toepassing te verwerken.Omdat netwerken en computers nu erg snel zijn, zou je denken dat dit slechts een fractie van een seconde zou duren. Hoewel dit het geval is voor een enkel verzoek, als een zeer complexe toepassing miljoenen of zelfs honderden miljoenen interacties met de database vereist, kan het vermenigvuldigen van het aantal interacties met even fracties van een seconde tot zeer slechte prestaties leiden.

Zelfs relatief eenvoudige bewerkingen die slechts een paar databaseaanvragen vereisen, kunnen problematisch zijn als de applicatie wordt gebruikt door honderden, duizenden of tienduizenden gebruikers tegelijkertijd. Het is veel moeilijker om een ​​database-intensieve applicatie te bouwen zonder gebruik te maken van server-side codering dan het schrijven van alle code die moet worden uitgevoerd in een applicatieserver.

Een van de argumenten tegen het schrijven van code aan de serverzijde is dat de toepassing niet draagbaar is (kan niet van het ene naar het andere platform worden verplaatst). De meeste organisaties die Oracle gebruiken, gebruiken het echter al heel lang (tien of meer jaar) en overwegen geen overstap naar een ander platform. Ook is de ontwikkeling van het web momenteel in een staat van snelle beweging. Organisaties wisselen vaak tussen. NET, J2EE en andere omgevingen voor hun webgebaseerde applicatie-ontwikkeling. Beide. NET en J2EE-omgevingen zijn ook in beweging. In de J2EE-omgeving bestond de industriestandaard voor webontwikkeling ongeveer een jaar geleden uit het maken van JavaServer-pagina's (JSP's). Momenteel is de industriestandaard om te werken in de JSP / Struts-omgeving. In het jaar erna zullen JavaServer Faces (JSF's) waarschijnlijk de industriestandaard worden. Daarom loopt de code die in de middelste laag geschreven wordt, een hoog risico om in de toekomst herschreven te moeten worden.

Code aan serverzijde wordt sneller uitgevoerd, is gemakkelijker te onderhouden en te testen en is minder vatbaar voor wijzigingen dan code die in de middelste laag is geplaatst. Daarom is het een betere benadering om grote delen van een toepassing in de database te maken.

Er zijn een aantal plaatsen waar u code kunt schrijven die uw toepassingen kunnen gebruiken:

Gedeelten van toepassingen:

  • PL / SQL-programmeereenheden kunnen een reeks waarden (functies) of PL / SQL-routines retourneren kan databasebewerkingen (procedures) uitvoeren. Deze functies en procedures kunnen worden opgeroepen door andere functies en procedures of (in het geval van functies) die in SQL-instructies worden gebruikt. PL / SQL-routines kunnen zo groot en complex zijn als u wilt. Sommige complexe routines kunnen duizenden regels code bevatten. Volledige systemen kunnen miljoenen regels code bevatten. PL / SQL-code ingesloten in views:
  • Met Oracle kunt u code insluiten in database-views. De code bevindt zich mogelijk op een van de twee plaatsen in de weergave. Ten eerste kunt u correct vervaardigde functies plaatsen door een waarde terug te geven in het SELECT-gedeelte van een SQL-instructie om extra informatie op te halen, die al dan niet deel uitmaakt van de tabellen die worden opgevraagd. U kunt PL / SQL ook insluiten IN PLAATS VAN triggers in een weergave. Met deze triggers kunt u bewerkingen INSERT, UPDATE en DELETE uitvoeren op complexe views, waarbij PL / SQL programmatisch verwerkt hoe deze bewerkingen moeten worden afgehandeld.
  • Batchroutines:
  • Batchroutines voer code uit die een groot aantal records op hetzelfde moment verwerkt. Het genereren van facturen voor elke klant in een systeem of het verwerken van salariscontroles voor een hele organisatie zijn voorbeelden van batchroutines. Deze routines zijn meestal groot, complex en database-intensief. Dit type routine zou zeker moeten worden geschreven in PL / SQL.

Wat is PL / SQL goed voor? - dummies

Bewerkers keuze

Lagen automatisch aanpassen in Photoshop CS6 - dummies

Lagen automatisch aanpassen in Photoshop CS6 - dummies

De opdracht Auto-mengen in Photoshop Creative Suite 6 helpt om de veelbetekende naden of vreemde kleurinconsistenties die optreden bij het samenvoegen van opnamen met verschillende belichtingen of contrastinstellingen, te verzachten. U kunt ook de opdracht Bestand → Automatiseren → Photomerge gebruiken om afbeeldingen samen te voegen. Tegoed: © iStockphoto. com / Chrisp0 Image # 7310234 U kunt deze opdracht ook gebruiken om een ​​...

Sharp-afbeeldingen vervagen in Photoshop CS6 - dummies

Sharp-afbeeldingen vervagen in Photoshop CS6 - dummies

Mogelijk vindt u een wazig filter in Photoshop CS6 als u een afbeelding hebt die ongewenste korrels bevat (de ruwheid of ruis die wordt toegevoegd door de fotografische film) of een lelijk patroon van halftone dots dat wordt gebruikt in een afgedrukte afbeelding. Mogelijk moet u ook een achtergrond vervagen om de ...

Hoe u uw monitor kalibreert in Photoshop CS6 - dummies

Hoe u uw monitor kalibreert in Photoshop CS6 - dummies

Kalibreren van uw monitor van uw monitor zorgt ervoor dat wanneer u werken in Photoshop CS6, uw monitor geeft geen rode, groene of blauwe colorcasts (sporen van kleur) weer en biedt een zo neutraal mogelijk grijs scherm. Kalibratie zorgt ervoor dat de manier waarop u uw afbeelding vandaag bekijkt, is hoe u uw afbeelding bekijkt ...

Bewerkers keuze

Benader Tragedie met de juiste vragen om geluk te vinden - dummies

Benader Tragedie met de juiste vragen om geluk te vinden - dummies

Voordelen en het resulterende geluk is het resultaat van het stellen van de juiste vragen over de impact van de tragedie op je leven. Het vereist enige introspectie, enige zelfanalyse en een verbinding met je innerlijke zelf. Je moet beslissen of er iets goeds is aan een negatieve leefsituatie - anderen kunnen dat niet doen voor ...

Breng de Me in evenwicht met de We to Have Happy Relationship - dummies

Breng de Me in evenwicht met de We to Have Happy Relationship - dummies

Een gelukkig paar is een waarin de twee partners hun eigen afzonderlijke identiteit behouden terwijl ze samenwerken om de vele uitdagingen van het leven aan te gaan en wederzijdse doelen te bereiken. Dit is soms moeilijk om te doen, maar als je allebei wilt dat het werkt, zal het dat meestal wel doen. Een minister weigerde om het traditionele huwelijksritueel voort te zetten waar de ...

Analyse Verlamming - Dummies

Analyse Verlamming - Dummies

Vermijden als een introvert persoon, je bent een diepzinnige denker en je houdt ervan elke hoek van een probleem te overwegen . En dat is een goede zaak, behalve wanneer het leidt tot analyse-verlamming. Wat is analyse verlamming? Het is wat er gebeurt als je zo wordt meegesleept door elk aspect van een situatie te analyseren dat je niet kunt komen ...

Bewerkers keuze

Elektronica Componenten: Pakketten met geïntegreerde schakeling - dummy's

Elektronica Componenten: Pakketten met geïntegreerde schakeling - dummy's

Geïntegreerde schakelingen (IC's) worden geleverd in een verschillende pakkettypen, maar bijna alle IC's waarmee u in hobby-elektronica zult werken, worden geleverd in een soort pakket genaamd dubbel inline-pakket of DIP. Ja, de zinsnede "DIP-pakket" is overbodig omdat de P in DIP al staat voor pakket, maar de zinsnede "DIP ...

Elektronica Componenten: geïntegreerde schakelingen in schematische diagrammen - dummies

Elektronica Componenten: geïntegreerde schakelingen in schematische diagrammen - dummies

In een elektronisch schema diagram, een geïntegreerde schakeling wordt meestal gewoon als een rechthoek weergegeven met circuitverbindingen die handig rond de rechthoek zijn geplaatst zonder rekening te houden met de fysieke positionering van de pennen. Elke pin-verbinding is gelabeld. U ziet dat de pinnen in dit schema niet in dezelfde volgorde staan ​​als in de ...

Elektronica Componenten: geïntegreerde schakelingen en de wet van Moore - dummies

Elektronica Componenten: geïntegreerde schakelingen en de wet van Moore - dummies

U hebt waarschijnlijk gehoord van de wet van Moore, een elektronisch statement dat in een notendop voorspelt dat het aantal transistors dat op een enkel geïntegreerd circuit kan worden geplaatst ongeveer elke twee jaar verdubbelt. Gordon Moore, een van de oprichters van Intel, stelde eerst zijn voorspelling in 1965. Toen was de voorspelling zelfs nog ambitieuzer. ...