none
Cursores en SQL Server RRS feed

  • Debate general

  • Hola,

    Hace poco haciendo un Job para que cambie el campo de estatus en una tabla después de comparar unas fechas decidí implementar un cursor pero un compañero me dice que estos son obsoletos y que se encuentran en las versiones recientes de SQL Server solo por compatibilidad, también había pensado en crear una tabla temporal y de esta manera recorrer los registros, entonces quisiera saber con base a su experiencia cual es la mejor opción que podría aplicar y si esto de los cursores es cierto.

    • Tipo cambiado José De Alva miércoles, 20 de julio de 2016 22:43
    martes, 19 de julio de 2016 23:29

Todas las respuestas

  • Gabriela Germán,

    Los cursores no son obsoletos, por lo menos no están dentro de las características que pasarán a ser "deprecated" en las próximas versiones de SQL Server, tampoco es cierto que se encuentren en las versiones modernas sólo por un tema de compatibilidad, lo que es cierto es que su uso no es recomendado.

    ¿Entonces que puedo recomendarte? Pues nada. Si lo que necesitas es una recomendación de que camino tomar ante una problemática necesitas platicarnos acerca el caso que tienes, ¿de acuerdo?. Coméntanos que es lo que realizas y como lo vienes afrontando, estoy seguro que con esa información puedes obtener recomendaciones de primera mano.

    Esperamos por tu feed-back


    miércoles, 20 de julio de 2016 0:10
  • Hola Gabriela

    Mira, por mi experiencia te puedo decir que en la mayoria de los escenarios puedes prescindir (y deberias) del uso de cursores, no son obsoletos, sin embargo su logica procedimental entran en conflicto con aspectos de rendimiento de un motor de BBDD orientado a trabajar con Set Theory, sin embargo hay ocasiones en las que su uso te permite optimizar soluciones, por ejemplo los he usado en Jobs que se encargan de hacer consultas a objetos de la BBDD como indices o estadisticas y operar sobre ellas, aunque para su uso con tablas de usuario por lo general no las uso, recuerdo haber leido en un libro de Itzik BenGan que podias perfectamente usar cursores si requerias que tu motor de BBDD procesara una fila al mismo tiempo (o una fila a la vez).


    "Oh, the wind, the wind is blowing,through the graves the wind is blowing,Freedom soon will come; then well come from the shadows".The Partisan(Leonard Cohen) Email: me[at]geohernandez.net Blog:www.geohernandez.net

    miércoles, 20 de julio de 2016 7:03