![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
#9
|
||||
|
||||
|
Hola Casimiro.
Que yo sepa ha sido posible hacerlo desde siempre, desde Firebird 1 (que es cuando empecé a utilizar Interbase/Firebird). Que yo recuerde, en los procedimientos almacenados siempre se ha podido añadir el suspend (que normalmente utilizas con un for select) para que devuelva el resultado como un dataset. Aunque esto normalmente se usa para leer un dataset en tu programa (en lugar de utilizando un select), también puedes utilizar el procedimiento almacenado dentro de un select, en una union, en una subconsulta, etc. ... Así que un buen día me di cuenta de que eso podia ser muy útil, ya que además de utilizarlo para consultar datos también podría servir para definirme mi propia librería de funciones en PSQL, y no tener que depender tanto de udf's externas. La verdad es que desde entonces lo vengo usando de forma masiva. Me es especialmente imprescindible cuando tengo que importar datos. Muchas veces tengo que programar importaciones hacia nuestro sistema de las gestiones que puedan tener nuevos clientes. Con lo que te encuentras que tienes que trabajar con todo tipo de datos, y que muchas veces los clientes lo tiene en un simple campo de texto, mal formateado, y que te las tienes que apañar para convertirlo, por ejemplo, en un timestamp. Por eso tengo una librería de funciones como esta (en este caso intenta convertir una cadena en fecha) :
Creo una tablas temporales de importacion, con la estructura de los datos a importar, y hago un DataPump, con lo que ya tengo todos los datos en una única base de datos Firebird. Luego ya solo tengo que hacer los correspondentes INSERT INTO *** SELECT **** FROM IMPORT_**** para poner los datos de las tablas temporales en las tables correspondientes de nuestro sistema, y puedo utilizar esas funciones como si fueran UDF's, con lo que he recortado drasticamente el tiempo que tardo en hacer una importacion de datos (antes me tenía que hacer un programa en Delphi ex-profeso en cada ocasión). Saludos
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). Última edición por guillotmarc fecha: 10-03-2010 a las 19:50:29. |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Firebird 1.5.4 funciona en Win Vista pero Firebird 2.0.1 NO !!! | Hagen | Firebird e Interbase | 5 | 19-05-2007 21:17:54 |
| Firebird 1.5.3 Error:No puede ejecutarse Firebird Guardian xq ya hay una instancia | Delphius | Firebird e Interbase | 5 | 26-01-2007 10:19:20 |
| alguien ha utilizado Firebird DDX provider? (conectarse con db en firebird!) | JuanErasmo | .NET | 1 | 04-11-2006 16:17:12 |
| Firebird : Llamado para probadores de Firebird 2.0 | JOSEPE | Firebird e Interbase | 0 | 12-03-2005 20:33:18 |
| Problemas Firebird Super Server 1.5 con RFunc Firebird v 1.0 | Prophoenix | Firebird e Interbase | 1 | 09-03-2004 11:40:48 |
|