Programmeurs gebruiken standaard query- taal ( SQL ) voor toegang tot een database en de inhoud ervan te wijzigen . Omdat een database bevat veel meer data dan kan verwerken op een bepaald moment wordt enkel het werk om een klein gedeelte van het geheugen genoemd contextgebied . Programmeurs toegang tot de context gebied met behulp van een cursor . Impliciete en expliciete cursors dienen hetzelfde wezenlijke doel van het toestaan van programmeurs om het geretourneerd door een SQL-instructie sequentieel rijen openen , maar elk biedt ook een unieke set van voor-en nadelen . Creatie Standaard , SQL toegang tot gegevens met behulp van een impliciete cursor . Programmeurs en database ingenieurs gewoon schrijven een SQL-instructie en voer het uit , en SQL automatisch rekenen op een impliciete cursor om de instructie uit te voeren . U hoeft niet te instantiëren of verklaren een variabele om een impliciete cursor te gebruiken . Een expliciete cursor gebruiken , moet u echter expliciet instantiëren met behulp van het cursor_name trefwoorden . Zodra de draad verlaat de code blok , SQL verwijdert de expliciete cursor uit het geheugen . Single Row Retrieval Indien correct gebruikt , een expliciete cursor voert efficiënter dan een impliciete cursor bij het ophalen van een enkele rij uit een database . Een impliciete cursor moet twee retourvluchten maken om een rij van een database is. De eerste reis dient om de rij te halen , de tweede om te beoordelen of het aantal rijen het maximum aantal rijen is toegestaan zal overschrijden . In tegenstelling, een expliciete cursor maakt slechts een enkele ronde reis naar de database om een rij te halen . U moet zich geen zorgen over dit kleine verschil onder normale omstandigheden , maar in situaties waar je veel op een rij opvragingen moet uitvoeren, gebruikt een expliciete cursor . Speed Onder de grote meerderheid van de omstandigheden , een SQL- query die steunt op een impliciete cursor voert sneller dan een query die is gebaseerd op een expliciete cursor . Natuurlijk moet je een expliciete query wanneer u nodig hebt om een zeer groot aantal single- rij queries uit te voeren , maar onder vrijwel elke andere omstandigheid , moet je een impliciete query . Impliciete vragen niet alleen sneller uitvoeren , maar programmeurs vinden ze gemakkelijker te gebruiken en te beheren . Controle Een programmeur kan veel meer controle over een expliciete cursor niet uitoefenen dan een impliciete cursor . U kunt direct controle op het verkeer en de uitvoering van een expliciete cursor , maar een impliciete cursor blijft onder de onafhankelijke controle van de interne motor SQL 's . U kunt geen toegang attributen een impliciete cursor als je kunt met een externe cursor , noch kunt u gemakkelijk gebruik maken van vertakking of andere beslissing uitspraken .
|