Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #18  
Antiguo 14-11-2012
cointec cointec is offline
Miembro
 
Registrado: jul 2004
Ubicación: Alicante-España
Posts: 76
Poder: 21
cointec Va por buen camino
Cita:
Empezado por poliburro Ver Mensaje
Pero eso no es agregar código adicional? Mysql y MsSql por ejemplo tu haces un

Código SQL [-]
 
   Select Campo1,Campo2,..,CampoN
     from tabla 
    where  criterio = ValParam1 or
              criterio = valParam2

y eso obtienes al ejecutr el SP con lo que no requieres de un suspend o fetch etc...

En oracle y Db2 al contrario debes delcarar como un cursor el recordset que deseas dar como salida del SP pero al final con un mero Open CurName obtienes la salida del sp...

Entonces.. déjame ver si entiendo bien, En Firebird debes hacer todo ese código para poder dar salida a un simple resultset en un SP?
Hola, creo que uno de las mayores virtudes que creo no tienen otros motores es que se puede tratar un procedimiento almacenado como una tabla virtual y trabajar con ellos conforme si lo fuesen. El ejemplo que se ha puesto es muy simple y habría que ver como se hace un proceso complejo en otros motores para poder valorar si se necesita o no más código.

No es lo mismo devolver un cursor, que el propio procedimiento sea un cursor.

Select *
From procedimiento( aram1, aram2,..., : paramN )

Un procedimiento no se realiza para sustituir un simple select como en el caso que has puesto, su objetivo es realizar un procesamiento más o menos complejo, donde pueden intervenir consultas de varias tablas y operaciones más o menos complejas con los datos obtenidos de ellas, por ejemplo. Una de sus funciones es no es sustituir un simple select. Y el resultado de todo ello es un conjunto de registros que puedes tratar como una tabla.

Quizá podrías mostrar como devolver un recordset con características similares en sqlserver, mysql u oracle para poder comparar realmente si es más o menos complejo, porque no creo que se pueda comparar el select que has puesto como ejemplo con el procedimiento almacenado que se ha escrito.
__________________
Un saludo, Jesus García
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ayuda: "Record not found or changed by another user" alquimista_gdl Conexión con bases de datos 14 21-03-2009 21:09:21
Cursor "intermitente" al realizar consultas. mlara Firebird e Interbase 1 24-05-2008 03:51:26
Error Invalid blob handle in record buffer??? sin usar "Blobs to cache" varuhs Conexión con bases de datos 4 22-01-2007 22:19:53
¿Como Guardar un "RECORD" en un campo BLOB? sitrico Conexión con bases de datos 5 29-06-2004 18:32:01
"no current record for fetch operation" con procedimiento almacenado usado en Select Al González Firebird e Interbase 1 17-03-2004 22:13:17


La franja horaria es GMT +2. Ahora son las 00:45:58.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi