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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-11-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
¿Firebird soporta consultas que devuelven más de un cursor ("record set")?

Leyendo este artículo de nuestro compañero poliburro (recomiendo su recién iniciado blog), supe que MS SQL Server soporta consultas que regresan más de un cursor o record sets. No me extraña de ese motor, dada su fama de añadir cuanta cosa Microsoft considera útil sin consensuarlo con la industria.

La característica me parece buena y, como no estoy actualizado en Firebird, desconozco si éste último posee ya algo similar o lo proyecta tener. De ahí el título de este hilo. Llama la atención que tanto PostgreSQL como MySQL sí cuenten con esa característica, según se menciona ahí.

La intención no es generar polémicas (aunque sé que será inevitable ). Sino conocer un poco más sobre esto y sacar a la luz lo que a Firebird concierna (presente o futuro).

Saludos múltiples.
Responder Con Cita
  #2  
Antiguo 08-11-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Nunca había oido sobre esa característica.
He hecho una búsqueda por google y no he encontrado nada al respecto.
Responder Con Cita
  #3  
Antiguo 08-11-2012
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Cita:
Empezado por Al González Ver Mensaje
Leyendo este artículo de nuestro compañero poliburro (recomiendo su recién iniciado blog), supe que MS SQL Server soporta consultas que regresan más de un cursor o record sets. No me extraña de ese motor, dada su fama de añadir cuanta cosa Microsoft considera útil sin consensuarlo con la industria.
Saludos Al, como te respondí en mi blog, esta es una característica presente en Oracle, Sql Server, Mysql, Db2 y PostgreSql. Hablo de esos motores pues son los que más uso y dónde he probado el retorno de múltiples recordsets.

No se si lo soporte Firebird, supongo que sería algo más por agregar a la larga lista de "cosas" que no soporta.

Saludox

Edito. Gracias por la recomendación...
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #4  
Antiguo 08-11-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por poliburro Ver Mensaje
No se si lo soporte Firebird, supongo que sería algo más por agregar a la larga lista de "cosas" que no soporta.
¿Y cuál es esa larga lista?
Responder Con Cita
  #5  
Antiguo 08-11-2012
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Algunas serían:
  • Soporte XML
  • Soporte para XML SCHEMA
  • Soporte ETL
  • Soporte de conectividad entre pares
  • Soporte de conectividad entre diferentes
  • Visibilidad entre diferentes esquemas del mismo servidor
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #6  
Antiguo 08-11-2012
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Por cierto... no me gusta la idea de debatir sobre si es bueno o no Firebird. si a ustedes les gusta me parece bien. A mi en lo personal no me gusta ese motor de base de datos.
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #7  
Antiguo 08-11-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Hombre, has empezado tú
Responder Con Cita
  #8  
Antiguo 08-11-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por poliburro Ver Mensaje
Algunas serían:
  • Soporte XML
  • Soporte para XML SCHEMA
  • Soporte ETL
  • Soporte de conectividad entre pares
  • Soporte de conectividad entre diferentes
  • Visibilidad entre diferentes esquemas del mismo servidor
Existen utilidades de terceros para XML y también ETL.
Lo de conectividad entre pares y diferentes... no tengo ni idea de qué es, ni para lo que sirve

Y ya puestos, yo considero a firebird, postgresql y mysql... muchísimo mejor que MS sql server, ya que las primeras se ejecutan en diferentes sistemas operativos, por lo que pueden funcionar desde pequeños ordenadores hasta los mayores mainframes existentes.
Sin embargo MS sql server sólo funciona sobre un simple y 'doméstico' PC con S.O. windows
Responder Con Cita
  #9  
Antiguo 08-11-2012
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
Hace un tiempo conocí PostgreSQL y dejé de usar firebird. Pero si hay muchas cosas de este rdbms que vienen muy de la mano con delphi (Recordar que firebird viene de interbase un producto nacido en inprise y muy cercano a borland) y lo que me gustó de PostgreSQL era la posibilidad de utilizar el mismo motor en PHP y Delphi de una manera muy transparente.

Pero hace ya casi dos años logré trabajar MS-SQL de la mano de la empresa donde trabajé hasta hace muy poco. y me dí cuenta que en entornos empresariales, la batalla MS-SQL vs Mysql/PostgreSQL/Firebird la gana siempre MS-SQL y no solamente por ser Microsoft sino por su seguridad, la facilidad de administración, tareas integradas con las tareas del windows server, integración con active directory y además que montado en un buen servidor ofrece muy buenos rendimientos.

Dificilmente veo a Firebird/Mysql (Open Source)/PostgreSQL (Usa Kerberos) totalmente integrados (o por lo menos de forma nativa al rdbms) en una empresa cuya infraestructura de red se base en un Active Directory y requieran que los usuarios del dominio ingresen con su propio usuario (del dominio) y contraseña al aplicativo.

¿El hecho de que MS sql server funcione desde un simple y 'domestico' PC con S.O. windows no debería ser una ventaja mas que una desventaja?
¿No es ese uno de los puntos claves de Firebird y otros que pueden funcionar en equipos que van desde pc hasta grandes servidores o clusteres?
¿El hecho de que solo funcione en Windows es en realidad una desventaja cuando logras una grán integración con el S.O. y los demás servicios del mismo y que además cuando está sobre Windows Server ofrece muchas ventajas para los administradores de recursos de red?

No es una defensa o venir a decir que uno es malo u otro es bueno. Solo que no podemos comportarnos tipo fanboy con su smartphone (sea cual sea) y demonizar cualquier critica sea sana o no.

Aquí les dejo un link de comparaciones de estas y algunas otras bases de datos
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
  #10  
Antiguo 08-11-2012
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Existen utilidades de terceros para XML y también ETL.
Lo de conectividad entre pares y diferentes... no tengo ni idea de qué es, ni para lo que sirve
¿y qué utilidades son? Me gusta mucho trabajar en bases de datos y firebird no me ha convencido por la falta de ese soporte. Sería un aliciente para mi el conocer sobre esas herramientas de terceros.

La conectividad entre múltiples servidores de bases de base de datos te permiten implementar soluciones nativas para replicación de información. O para la consulta entre diferenets orígenes de datos: Algo como

Código SQL [-]
 
Select Servidor1.Data, Servidor2.Data
  from servidor1.schema.table1 tserv1
left join servidor2.schema.table1 tserv2
     on tserv1.keyfield = tserv2.keyfield

es sumamente útil. Al igual el poder hacer consultas entre diferentes esquemas del motor de base de datos. O poder hacer consultas de manera directa a servidores de diferente vendedor.


Sobre que MsSql no corre en otros OS, eso es cierto pero para ello tienes alternativas como Oracle, Db2 o PotgreSql. Yo jamás eligiría Firebird ni para windows o linux.

Sobre que MsSql solo corre en pcs domésticas, bueno allí que te puedo decir, me parece más una opinión al aire para denostar algo que se desconoce.

Ojo, Soy un gran fan de los motores de bases de datos en general. Me gusta mucho trabajar en ellos, en su administración, en su optimización así que no defiendo a uno en particular y si a todos en general.

Saludos

Y bueno a todo esto.... firebird soporta devolver mútiples resultsets?
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #11  
Antiguo 08-11-2012
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Cita:
Empezado por movorack Ver Mensaje
No es una defensa o venir a decir que uno es malo u otro es bueno. Solo que no podemos comportarnos tipo fanboy con su smartphone (sea cual sea) y demonizar cualquier critica sea sana o no.
Total y absolutamente de acuerdo amigo movorack.

¿Por cierto, has probado la integración de fedora directory para entornos empresariales con distribuciones basadas en RedHat? Podría ser una manera de consolidar tus entornos de trabajo en ese sistema operativo.
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #12  
Antiguo 08-11-2012
Avatar de Kipow
Kipow Kipow is offline
Miembro
 
Registrado: abr 2006
Ubicación: Guatemala
Posts: 329
Poder: 18
Kipow Va por buen camino
Hasta donde se Firebird no lo soporta. Pero prefiero generar procedimientos independientes para cada consulta para el mejor manejo de hilos y conexiones al servidor
Responder Con Cita
  #13  
Antiguo 08-11-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
y lo que me gustó de PostgreSQL era la posibilidad de utilizar el mismo motor en PHP y Delphi de una manera muy transparente.
Y con firebird también, lo he usado hasta yo mismo.

gana siempre MS-SQL y no solamente por ser Microsoft sino por su seguridad, la facilidad de administración, tareas integradas con las tareas del windows server, integración con active directory y además que montado en un buen servidor ofrece muy buenos rendimientos.

No puedes ni compararlo, ¿seguridad?, ¿facilidad de administración?, ¿buenos rendimientos?... con firebird...
Seguridad, después de 14 años de uso: cero fallos.
Facilidad de administración: No puedes compararlo de ninguna manera, firebird lo instalas en 30 segundos en cualquier equipo y no tienes que tocar nada. Más facilidad de administración es imposible.
Rendimiento: En todos estos años son centenares de clientes a los que hemos sustituido ms sql+windows por firebird+linux y lo primero que dicen es: ¡¡¡¡qué rapidez!!!

¿El hecho de que MS sql server funcione desde un simple y 'domestico' PC con S.O. windows no debería ser una ventaja mas que una desventaja?
No, yo no he dicho "desde", he dicho "solamente", ms sql sólo funciona en windows. Punto.

¿No es ese uno de los puntos claves de Firebird y otros que pueden funcionar en equipos que van desde pc hasta grandes servidores o clusteres?
Exacto, cosa que no puede hacer ms sql, que sólo funciona en windows.

¿El hecho de que solo funcione en Windows es en realidad una desventaja cuando logras una grán integración con el S.O. y los demás servicios del mismo y que además cuando está sobre Windows Server ofrece muchas ventajas para los administradores de recursos de red?
Sí, desde luego, es una desventaja que sólo funcione en windows.

No es una defensa o venir a decir que uno es malo u otro es bueno. Solo que no podemos comportarnos tipo fanboy con su smartphone (sea cual sea) y demonizar cualquier critica sea sana o no.
Son sólo realidades, incluso postgresql (con su fama de lento) es más rápido que ms sql server.


Cada uno tiene sus gustos, simplemente, y para mí, un RDBMS que sólo funciona en windows ya lo descartaría antes incluso de entrar en una lista para evaluarlo.
No me parece serio ni profesional un servidor empresarial con windows.
Y ya no hablemos de pagos de licencias del servidor, del sistema operativo, del RDMBS, del antivirus y de todas esas chorradas que lleva aparejadas windows.

Será que he usado unix y linux (en 1988 ya instalaba unix en las empresas) que windows me parece una atracción de feria.

¡¡¡Venga, debate!!!
Responder Con Cita
  #14  
Antiguo 08-11-2012
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Rendimiento: En todos estos años son centenares de clientes a los que hemos sustituido ms sql+windows por firebird+linux y lo primero que dicen es: ¡¡¡¡qué rapidez!!!

Eso depende siempre del diseñador de la base de datos y su administrador. Vieras que me han dicho lo mismo en algunos sistemas que he remplazado donde quité a un firebird lentisimo.... y lo he sustituido por otro motor.
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #15  
Antiguo 08-11-2012
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
No es una defensa o venir a decir que uno es malo u otro es bueno. Solo que no podemos comportarnos tipo fanboy con su smartphone (sea cual sea) y demonizar cualquier critica sea sana o no.
Son sólo realidades, incluso postgresql (con su fama de lento) es más rápido que ms sql server.

¿y esto lo basas en?
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #16  
Antiguo 08-11-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por poliburro Ver Mensaje
¿y esto lo basas en?
Aquí lo tienes
Responder Con Cita
  #17  
Antiguo 08-11-2012
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Aquí lo tienes
y lo has hecho alguna vez? o Has googleado buscando esa comparatva sin haber conseguido jamás un rendimiento mayor?

Por que te diré al menos yo si lo he comprobado y que de ahí se que es verdad. Hasta antes de sql server 2012 PostgreSql era capaz de obtener mejores tiempos de procesamiento y respuesta. Conseguirlo era muy sencillo, tan solo separabas los índices y lo colocabas en un arreglo de discos de alta velocidad y buala¡¡¡¡¡¡¡ mejora instantánea....

ojo... y no necesité remitirte a un docuemento que seguramente no has leido a cabalidad ni implementado siquiera...
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #18  
Antiguo 08-11-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.038
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Hombre, amigo Poliburro, ahí has soltado unas frases que se las trae

No voy a ser yo quien te aclare lo que has dicho, pero vuelve a leer lo que has escrito, imagina que ha sido otra persona.
Es que no puedo creer que hayas sido tú

Sin comentarios.
Responder Con Cita
  #19  
Antiguo 08-11-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Nunca había oido sobre esa característica.
He hecho una búsqueda por google y no he encontrado nada al respecto.
Cita:
Empezado por Kipow Ver Mensaje
Hasta donde se Firebird no lo soporta. Pero prefiero generar procedimientos independientes para cada consulta para el mejor manejo de hilos y conexiones al servidor
Creo que con esto se satisface mi duda, y supongo que no hay planes (que se sepa) de añadir esa útil característica.

En mi caso particular, no me parece algo de peso para dejar de usar Firebird en proyectos poco ambiciosos, como en los que habitualmente trabajo. He tenido la fortuna de usar un poco MS SQL Server, pero me siento más cómodo con Firebird por su sencillez de manejo y por lo bien que parece entenderse con Delphi. Claro que si llego a necesitar características que Firebird no tenga, habré de estudiar qué otro motor convendría usar, considerando ventajas y desventajas, cual debe ser ante cada problema que se le presenta a un desarrollador.

Y por supuesto que, ya estando en MS SQL Server, no desaprovecharía esa útil característica que poliburro explica bastante bien.

Un abrazo cortafuegos.

Al González.
Responder Con Cita
  #20  
Antiguo 08-11-2012
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
No... la verdad no soporta esa característica y eso está detectado desde hace mucho tiempo.

Cita:
Support stored procedure returning mutliple dataset
Created: 30/Mar/07 04:50 PM
As a MS SQL user, one of the most dissappointing limitation I run into when converting my application to Firebird is that only one dataset can be returned from the stored procedure.

In MS TSQL, the following 4 SP or function types are supported:

1. Stored procedure (both return value and multiple recordsets can be returned, but it can not be used as a table in query)
2. Scalar function (only returns a scalar value, can be used in query)
3. Inline table-valued functions (return one recordset, can be used as a table in query)
4. Multi-statement table-valued functions (return one recordset, can be used as a table in query)

#1 does not seem to be supported by Firebird. From time to time I need to return multiple related dataset from one SP to support the application. But now in Firebird, I need to split the logic into separate SPs. Even more painful is that I need to rewrite the logic in client-side too!

Without some features, it's hard to switch from MS SQL to Firebird because of the big overhead involved in the converting & testing.
enlace

Creeria yo que si aún no posee esa característica si está reportada desde el 2007. No la implementarán dentro del futuro próximo.

Cita:
¿Por cierto, has probado la integración de fedora directory para entornos empresariales con distribuciones basadas en RedHat? Podría ser una manera de consolidar tus entornos de trabajo en ese sistema operativo.
No la verdad no he usado linux desde hace un buen tiempo.
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
Respuesta



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 20:09:21
Cursor "intermitente" al realizar consultas. mlara Firebird e Interbase 1 24-05-2008 02: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 21:19:53
¿Como Guardar un "RECORD" en un campo BLOB? sitrico Conexión con bases de datos 5 29-06-2004 17:32:01
"no current record for fetch operation" con procedimiento almacenado usado en Select Al González Firebird e Interbase 1 17-03-2004 21:13:17


La franja horaria es GMT +2. Ahora son las 05:57:02.


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