Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Compatibilidad firebird 1.5 con IBX (https://www.clubdelphi.com/foros/showthread.php?t=23830)

Ivanzinho 29-07-2005 16:19:58

Compatibilidad firebird 1.5 con IBX
 
Hola foro!, estoy migrando mi aplicación de paradox a firebird 1.5. Para hacer esto opté por sustituir los componentes BDE que usaba para paradox por los componentes IBX, pero estos me están dando muchos problemas.

Alguién sabe si los componentes IBX y firebird 1.5 son 100 % compatibles (o por lo menos un porcentaje bastante elevado), o por el contrario todo es fruto de mi inexperiencia con Bases de datos C/S.

Muchas gracias.

maeyanes 29-07-2005 16:26:26

Que tipo de problemas?

Hasta donde tengo entendido, los IBX no soportan al 100% las últimas versiones de Firebird. Pero claro, puedo haber entendido mal.



Saludos...

Ivanzinho 29-07-2005 16:34:36

Es la primera vez que trabajo con un SGBD C/S, pero no creo que sea normal que cada vez que hago un IBTransaction.commit se me cierren los IBTables. A alguien le paso esto o es algo que estoy haciendo mal???

maeyanes 29-07-2005 16:36:40

Ese es precisamente el comportamiento correcto del Commit y Rollback. Cada vez que haces un Commit o un Rollback, los dataset involucrados en la transacción se cierran.



Saludos...

Ivanzinho 29-07-2005 16:52:06

Muchas gracias y perdona por mi ignorancia, pero con los componentes BDE no tenía este problema.

Me recomiendan, para firebird 1.5, trabajar con componentes IBX o BDE, existe alguna ventaja de unos sobre otros??

Muchas gracias

maeyanes 29-07-2005 16:56:37

Los IBX te ofrecen conexión directa al servidor, lo cual es más rápido que pasar primero por el BDE.

Ahora, el BDE maneja las transacciones internamente y me imagino que después de un commit o rollback interno vuelve a abrir los dataset, es por eso que parece que no los cierra. Digo me imagino por que nunca he usado el BDE para conectarme con Interbase/Firebird.

En cuanto al BDE, este tiene ya años que no es actualizado, es más, Borland ya no recomienda usarlo. Si usas BDE para conectarte a Interbase/Firebird te vas a encontrar que no soporta muchas de las características nuevas de estos servidores, como el dialecto 3 del SQL.



Saludos...

Ivanzinho 29-07-2005 16:59:45

Ok, muchas gracias de nuevo

vtdeleon 29-07-2005 17:38:12

Saludos

Tengo entendido que usando CommitRetaining se mantiene el dataset abierto
Cita:

Empezado por ayuda de delphi
Commit
Permanently stores updates, insertions, and deletions of data associated with the current transaction, and ends the current transactions.

Cita:

Empezado por ayuda de delphi
CommitRetaining
Commits the active transaction and retains the transaction context after a commit.


Crandel 30-07-2005 05:57:26

Los IBX son muy rápidos para la conexión con Firebird. Se que no soportan las últimas mejoras de firebird pero igual siguen siendo 100% compatibles.

con respecto a tu duda es tal cual menciona vtdeleon.

AdrianD 30-07-2005 15:04:24

Si utilizas el commitretaining comienzas a tener perdidas de performance con lo cual cada tanto deberas hacer un commit. Lo que te recomiendo es que le des un vistaso a DataSnap(ClientDataSet y Provider), yo lo utilizo con una base de datos de mas de 300 mb, 9 a 12 clientes conectados permanentemente, 8 de los cuales facturan durante todo el tiempo que trabajan y realmente anda bien

Ivanzinho 08-08-2005 10:05:08

Muchas gracias a todos por vuestras respuestas, esto ya empieza a tener buena pinta :D .

lbuelvas 08-08-2005 21:06:08

Hola foro,

Trabajo con Delpji 6 y los IBX (la ultima version) concetado a Firebird 1.5 y realmente nunca he tenido problemas de compatibilidad, hago bastante uso de Triggers, Procedimientos almacenados y Generadores.

Si alguien pudiera decirme (hasta la version de Firebird 1.5 pues la proxima versión 2 y el monstruo que sera la 3 tal vez no nos dejen trabajar con IBX) cuales son los famosos problemas que no me garantizan el 100% de comptaibilidad ?.

Se que hay difrencias entre Interbase y Firebird y que algunas consultas que funcionan en Interbase no funcionan en Firebird especialmente las que Firebird considera ambiguas (cuando existen nombres de campos iguales en dos tablas que participan en una consulta sin que la consulta sepa a que tabla pertenece), pero es un problema del select no de los componentes IBX.

Crandel 08-08-2005 21:32:51

No es que no sean 100%, todo lo contrario, dado que todo lo que soporta actualmente Interbase, también lo hace Firebird.

De lo que se hablo es que hay cosas nuevas de Firebird que no las soporta IBX, que no es lo mismo.

lbuelvas 10-08-2005 06:17:51

Hola foro,

Huy no entendi cuando dijiste "No es que no sean 100%, todo lo contrario, ..." me va a tocar repasar la logica de predicados.

Pero por Dios diganme siquiera una de esas cosas nuevas que tiene Firebird que no las soporta IBX, siquiera una.

Crandel 10-08-2005 07:23:37

* IBX usa gds32.dll para conectarse con IB/FB, mientras la dll de conexión actual es fbclient.dll. Igualmente se agrego una dll gds32.dll para mantener la compatibilidad con llamadas a la otra. Pero implica mayor latencia dado que se hace una doble llamada.

* No existía un entero de 64 bits en IB (ahora no se), FB 1.5 lo incorpora como BIGINT. IBX ahora lo soporta, pero no se desde que versión.

* FB incorpporó nuevas expresiones (que todavía no probé ejecutarlas desde IBX) como el RECREATE VIEW, NULLIF, etc.

estos son algunos ejemplos de lo que se van incorporando que podrían tener discrepancias entre versiones. No quiere decir que ocurra.

Tampoco leí que hay de nuevo en FB 2.0, que ya esta en su versión alfa. Que tambien habría que probar con IBX.

Por supuesto no me considero un experto en FB, ni cerca, pero son algunas cosas que me surgen a tu pregunta.

Crandel 10-08-2005 07:26:18

Me acabo de acordar que viene con firebird 1.5 un archivo llamado Firebird_v1.5.ReleaseNotes.pdf donde estan todas las nuevas caracteristicas, ahi puedes leer mucho más.


La franja horaria es GMT +2. Ahora son las 21:17:36.

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