FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Hola foro.
Pues les cuento, resulta que he trabajado con Delphi 6 + IBX + Firebird 1.5.6, adquirí licencia para RAD Studio 2007 hace un par de años, trate de migrar las aplicaciones pero desistí por falta de tiempo y he continuado con Delphi 6. Ahora aparecen nuevas dificultades, mis aplicaciones compiladas con Delphi 6 no corren conectandome al motor Firebird 2.x, razon por la que estoy haciendo pruebas con "Delphi 2010" y con los componentes dbExpress. Resulta que los dbExpress como son mas genericos que los componentes especificos IBX (construidos para Interbase no para Firebird) no tienen ciertas características que me son de mucha utilidad: Conocer el Plan de una Consulta por medio del método TIBSQL.Plan, Administrar Usurios, Roles y permisos con el componente TIBSecurityService de la pestaña Interbase Admin. Como podrían hacerse estas cosas con los componentes dbExpress ?
__________________
Luis Fernando Buelvas T. |
#2
|
||||
|
||||
Buenos días.
Cita:
Finalmente, para gestionar permisos tienes el comando GRANT. (ejplo. GRANT SELECT, INSERT ON CLIENTES TO "PUBLIC"). Todos estos comandos los puedes ejecutar directamente en SQL por dbexpress. Lo que no conozco es como averiguar el PLAN de una consulta utilizando solo dbExpress. NOTA: Yo siempre pruebo mis consultas en IBExpert antes de incorporarlas a los programas, de esta forma me aseguro, comprobando su PLAN, de que tengan los índices adecuados. Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). Última edición por guillotmarc fecha: 04-10-2010 a las 11:02:24. |
#3
|
||||
|
||||
Vaya que casualidad. Firebird 2.5 acaba de ser liberado hoy mismo, así que ya no hay excusa para cambiarse a él y así poder gestionar las cuentas de usuario mediante sentencias SQL.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#4
|
||||
|
||||
Hola de nuevos compis.
Perdonarme la intromision para formularos una pregunta, ¿Como puedo crear la base de datos desde codigo?, ya sabeis que no me gusta usar otras aplicaciones, hasta ahora usaba ibaccess para crearlas, pero me empieza a dar problemas y prefiero crearlas yo. He probado SQLConnection.ExecuteDirect('CREATE DATABASE c:\mibase.fdb') y me dice que no encuentra el fichero, "UNAVAILABLE DATABASE". En la pagina http://www.firebirdsql.org/refdocs/l...reate-database dice que se hace asi, pero supongo que lo que "falla" es el componente tsqlconnecion, no se. Una ayudita "please", prometo documentarlo, jejeje |
#5
|
||||
|
||||
Hola.
Yo en mi aplicación tengo una copia de una base de datos vacía, así que para crear una nueva bbdd por código, solo tengo que copiar la base de datos en blanco. Puedes probar a conectar a una base de datos existente y desde esa conexión lanzar el create database. Puedes ejecutar el comando externo isql.exe para ejecutar un script de creación de la base de datos (aunque tendrás que distribuir con tu aplicación el isql.exe para asegurarte de tenerlo disponible). También puedes probar usar directamente el api de Firebird, saltándote dbExpress. http://stackoverflow.com/questions/4...ress-in-delphi Finalmente parece que en DBX4, a partir de Delphi 2007, ya se puede hacer. Pero no logro encontrar el artículo que citan en los blogs de Embarcadero (es como si todas las entradas de la epoca Borland/CodeGear hayan sido eliminadas). Parece que esa funcionalidad viene en dbxcommons.pas http://es.w3support.net/index.php?db=so&id=400114 Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). Última edición por guillotmarc fecha: 05-10-2010 a las 12:36:49. |
#6
|
||||
|
||||
Gracias guillotmarc.
Yo uso la misma tecnica, dispongo de una base de datos vacia y la mando junto con la aplicacion y creo las tablas que necesito. Los articulos mencionados ya los habia leido, parece facil con ib pero no asi con dbx, creo que seguiremos usando la tecnica de base en blanco ya que el comando "create database" con una base dase datos abierto indica "cannot prepare a CREATE DATABASE/SCHEMA statement". Seguiremos investigando. |
#7
|
|||
|
|||
Hola
Como comento en otro post, estoy tratando de buscar soluciones para usar Firebird en D2007 con dbExpress (me acabo de enterar que lo que yo hacía de usar Firebird en lugar de Interbase así... a pelo, no es muy ortodoxo, al parecer). El caso es que estoy tratando de usar el dbExpress Driver for Firebird en D2007, siguiendo las instrucciones de cesarsoftware. Me he bajado el zip (la última versión: v26), pero no encuentro por ningún lado el dbxdrivers.ini dentro del zip. El instalador de Firebird 2.5 guarda un archivo similar en: C:\Users\Public\Documents\RAD Studio\dbExpress\dbxdrivers.ini Supongo que se refiere a ese ¿no? Sin embargo, en la sección "[Installed Drivers]" no me aparece ninguna entrada "FirebirdConnection=1"; ni tengo sección "[FirebirdConnection]". No entiendo nada... Por otro lado... ¿es fiable este driver? Gracias |
#8
|
||||
|
||||
Cita:
Yo uso el componente TIBDatabase, de las IBX de Delphi, ya que la creación de una bbdd Firebird es igual a una Interbase (al menos por ahora).
Requiere uses ibdatabase Espero que te ayude. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
problema con odbc de firebird | mr_mustard | Firebird e Interbase | 0 | 30-09-2006 20:04:49 |
odbc para firebird 1.5 | ronimaxh | Firebird e Interbase | 2 | 18-08-2004 20:33:51 |
Sobre ODBC de Firebird | rpadin | Firebird e Interbase | 1 | 18-08-2004 15:08:53 |
ODBC firebird | Salomon | Firebird e Interbase | 5 | 10-05-2004 12:39:24 |
Firebird Odbc | hecjona | Noticias | 1 | 30-03-2004 22:05:54 |
|