CURSORES EN BASE DE DATOS Defnición: término mino c cursor ursor se ref refere ere a una estr estructura uctura de contr control ol En bases de datos, datos, el tér utilizada para el recorrido de los registros del resultado de una consulta. consulta. Un cursor se utiliza para el procesamiento individual de las flas devueltas por el sistema gestor de base de datos para una consulta. Es necesario debido a que muchos lenguaes de programación su!ren de lo que en inglés se conoce como impedance mismatch "!alta de concordancia#. c oncordancia#. Un cursor puede verse como un iterador sobre la colección de flas que habr$ en el set de resultados. %os cursores ampl&an el procesamiento de los resultados porque'
•
•
•
•
(ermiten (er miten situarse en flas espec&fcas del conunto de resultados. )ecuperan una fla o un bloque de flas de la posición actual en el conunto de resultados. *ceptan modifcaciones de los datos de las flas en la posición actual del conunto de resultados.
*ceptan di!erentes grados de visibilidad para los cambios que realizan otros usuarios en la in!ormación de la base de datos que se presenta en el conunto de resultados.
Implementaciones de cursores +% +erver admite tres implementaciones de cursores.
-. ur ursor sores es de /rans /ransact act0+ 0+% % +e basan en la sinta1is de 2E%*)E U)+3) 4 se usan principal en scripts de /ransac ransact0+% t0+%,, proc procedimi edimientos entos almac almacenado enados s 4 dese desencade ncadenador nadores. es. %os cursores de /ransact0+% se implementan en el servidor 4 se administran media ian nte instrucciones /ra ran nsact0+% enviadas del cli lie ente al serv se rvid idor or.. /am ambi bién én se pu pued eden en en enco cont ntra rarr en lo lote tes, s, pr proc oced edim imie ient ntos os almacenados o desencadenador desencadenadores. es.
5. urso ursores res de servidor servidor de la *(6 "6nter!az "6nter!az de programa programación ción de aplicacione aplicaciones# s# (ermiten las !unciones de cursor de la *(6 con 3%E 27 4 327. %os cursores (ermiten de servidor de la *(6 est$n implementados en el servidor. ada vez que una aplicación cliente a una !unción cursor de *(6, el proveedor 3%E 27 de +% +ervellama +erver r 8at 8ative ive lien lient t o eldecon contr trola olador dorlade 327 327 tra transm nsmite ite la
Jair Villao Gómez solicitud al servidor para que realice una acción con el cursor de servidor de la *(6.
9. u urs rsor ores es del del clien cliente te %os implementan internamente el controlador 327 de +% +erver 8ative lient 4 la 2%% que implementa la *(6 *23. %os cursores del cliente se impl im plem emen enta tan n al alma mace cena nand ndo o en ca cach ché é to toda das s la las s fl flas as de co con nun unto tos s de resul re sultad tados os de dell cli client ente. e. ad ada a ve vez z que una apl aplicac icación ión cli client ente e llam llama a a una !unción de cursor de la *(6, el controlador 327 de +% +erver 8ative lient o la 2%% de *23 realizan la operación de cursor en las flas del conunto de resultados almacenadas en la memoria caché del cliente.
Creación y uso Cursores de Transact!S"#$ Un cu curs rso or es cr cre ead ado o ut utiili liz zan ando do la sent nte enc ncia ia DEC DEC#AR #ARE E CUR CURSOR% SOR% Es obligatorio asignarle un nombre 2E%*)E cursor_name U)+3) :3) +E%E/... :)3;...
*ntes de ser utiliz utilizado, ado, el curso cursorr debe ser abierto con una sentencia sentencia O&EN% omo re omo resu sult ltad ado o de es esta ta se sent nten enci cia, a, el cu curs rsor or se po posi sici cion ona a antes de la primera fla del set de resultados. 3(E8 cursor_name
Un cursor se posiciona en una fla espec&fca del set de resultados con la sentencia 'ETC(. Una sentencia !etch transfere la in!ormación de la fla a la aplicación. Una vez todas las flas han sido procesadas o la sentencia !etch queda posicionada en una fla no e1istente, el +G72 devuelve un +%+/*/E
Thank you for interesting in our services. We are a non-profit group that run this website to share documents. We need your help to maintenance this website.