elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  Bases de Datos (Moderador: Carloswaldo)
| | | |-+  ayuda con cursor implicito en sql server
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ayuda con cursor implicito en sql server  (Leído 1,160 veces)
d91

Desconectado Desconectado

Mensajes: 165


Ver Perfil
ayuda con cursor implicito en sql server
« en: 12 Diciembre 2015, 13:43 pm »

hola a todos, estoy iniciando ahora con sql server y necesito hacer un procedimiento almacenado que cuente el total de las filas de una tabla, pero según he leído en sql server no contamos con los cursores implícitos:
Código
  1. SELECT COUNT(*) INTO contador FROM empleados;
  2.  
y no se como se haría con los explicitos, porque de estar vacia la tabla no se realiza ningún movimiento en el contador y de existir filas solo haría una instrucción de count(*)
Código
  1. DECLARE @var INT
  2. DECLARE contador cursor FOR
  3. SELECT COUNT(No_empleado) FROM empleado
  4.  
  5. BEGIN
  6. OPEN contador
  7. fetch contador INTO @var
  8.  print @var
  9. END
  10.  
  11.  
tampoco existe un tipo de dato igual a las  filas y sus columnas resultantes del cursor
cont contador%rowtype, sino que debo de declarar cada una de las columnas posibles que devolvera



« Última modificación: 12 Diciembre 2015, 14:39 pm por d91 » En línea

d91

Desconectado Desconectado

Mensajes: 165


Ver Perfil
Re: ayuda con cursor implicito en sql server
« Respuesta #1 en: 12 Diciembre 2015, 15:29 pm »

avance un poco mas, ahora necesito llamar a este procedimiento desde .NET y que el select sea el segundo cursor....
Código
  1. DECLARE @var INT
  2. DECLARE @var2 INT
  3. DECLARE c_contador cursor FOR
  4. SELECT COUNT(Codigo_empleado) FROM EMPLEADO
  5.  
  6. DECLARE c_ultimo cursor FOR
  7. SELECT MAX(Codigo_empleado) FROM EMPLEADO
  8.  
  9. BEGIN
  10. SET @var = 0
  11. OPEN c_contador
  12. fetch NEXT FROM c_contador INTO @var
  13. --while (@@FETCH_STATUS = 0)
  14. --BEGIN
  15.    --print @var
  16. --FETCH next from contador into @var
  17. --END
  18. CLOSE c_contador
  19. DEALLOCATE c_contador
  20. IF @var != 0
  21.  -- print @var
  22.  BEGIN
  23.   OPEN c_ultimo
  24.      fetch NEXT FROM c_ultimo INTO @var2
  25.      print @var2
  26.    close c_ultimo
  27.   deallocate c_ultimo
  28.  END
  29. ELSE
  30.    BEGIN
  31.       SET @var = -1
  32.       print @var
  33.    END
  34. END
  35.  
  36.  
  37.  


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cursor XP
Diseño Gráfico
Free-Knowledgend 0 1,110 Último mensaje 20 Enero 2005, 19:54 pm
por Free-Knowledgend
Cursor
Programación Visual Basic
yeikos 6 1,559 Último mensaje 29 Agosto 2006, 03:45 am
por Red Mx
[Ayuda] Otro cursor
Programación Visual Basic
& eDu & 3 1,035 Último mensaje 19 Abril 2008, 05:51 am
por seba123neo
[ayuda] nombre de arxivo seleccionado con cursor
Programación Visual Basic
L4sk0! 0 935 Último mensaje 19 Abril 2010, 19:51 pm
por L4sk0!
[AYUDA]Posicionar el cursor en C++
Programación C/C++
0xDani 0 1,848 Último mensaje 23 Mayo 2012, 21:10 pm
por 0xDani
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines