PDA

Ver la Versión Completa : Problema al conectar con Interbase


gesjug
12-08-2013, 10:47:00
Buenos dias:

A ver si me pueden echar una mano que estoy desesperado, he buscado por el foro y probado todo lo que pone pero no lo consigo.

tengo mi base de datos creada en interbase llamada prueba.gdb, he creado una tabla y la he rellenado, con el ibconsole, estoy conectado y todo. Uso el usuario SYSDBA y la contraseña masterkey.

Ahora tengo un formulario en delphi. Añado el IBDatabase y el IBTransaction. Al IBDatabase le configuro DefaultTransaction = IBTransaction y al IBTransaction le configuro DefaultDatabase = IBDatabase.
En el IBDatabase configuro DatabaseName = C:\interbase\PRUEBA.GDB que es donde tengo guardada mi base de datos. Le doy a connect, introduzco el usuario y contraseña pero no conecta, me muestra el error "unavailable database".

Si abro el database component editor y configuro la conexion, en vez de local, remota, pongo en server localhost, en protocol tcp y la ruta de mi base de datos, le doy a test y ya no me muestra el error "unavailable database" sino que me muestra este otro error "your username and password are not defined. Ask your database administrator to set up an Interbase login". Pero miro mi base de datos y si que tengo ese usuario con todos los permisos, es el que viene por defecto SYSDBA y contraseña masterkey.

No se que hacer.

Gracias por su ayuda.

jafera
12-08-2013, 18:30:18
Dale doble click al componente IBDatabase, lo pones en local, le pones de nuevo las credenciales y dsmarcas el login prompt y deberia funcionar

Saludos

Josep

gesjug
12-08-2013, 19:42:24
nada, me sale unavailable database. No consigo conectar de ninguna manera :(
Si lo pongo en local, me sale unavailable database, si lo pongo en remote con localhost, me sale el otro mensaje.
A la base de datos si accedo con el ibconsole y puedo manejar las tablas, pero no consigo conectarlo con delphi de ninguna manera

jafera
12-08-2013, 20:04:41
A ver si esta imagen te sirve

Saludos

Josep

gesjug
13-08-2013, 09:09:59
Gracias por responder jafera.

Lo que me mandas en la imagen es tal y como lo hago yo, pero me sigue saliendo unavailable database.
Ya no se que hacer y necesito trabajar con Interbase :(

Casimiro Notevi
13-08-2013, 09:43:06
es tal y como lo hago yo Está claro que no, porque en ese caso funcionaría, como a todo el mundo ;)

Crea un nuevo proyecto y ve paso a paso.

Aquí (http://www.intitec.com/varios/Delphi_conexion_firebird_con_ibx.pdf) tienes un simple tutorial, usando IBX

gesjug
13-08-2013, 10:16:58
Gracias por los comentarios y el manual.

He creado ya mil formularios nuevos y bd nuevas, no se...

La cuestión es que todos esos pasos los hago, no lo entiendo, lo mismo es problema de la base de datos, pero la cuestión es que compruebo todo desde el ibconsole, me pone que el servidor está arrancado, creo las tablas, hago consultas, añado datos...

En el TIBDataBase he probado de muchas formas que he visto en hilos y manuales, también he probado como local y como remoto, la diferencia es que si lo configuro como local, el error es "unavailable database" y si lo hago como remoto el error es que me dice que usuario o contraseña incorrecto, que contacte con el administrador, pero el usuario que estoy usando es SYSDBA y masterkey.
Probé creando otros usuarios pero nada.

Yo siempre he trabajado con MySQL y nunca tuve problemas pero ahora que nos hacen trabajar con Interbase, no hay forma...

Casimiro Notevi
13-08-2013, 10:48:44
Ya que lo has hecho muchas veces hazlo una vez más y descríbenos paso a paso, exactamente lo que haces y lo que pones.
Es la única forma que queda para poder ayudarte, ya que no vemos tu pantalla desde aquí :)

gesjug
13-08-2013, 11:00:04
A ver:

1.- Arranco el servidor, tengo el ibconsole abierto, donde veo mi database y mi tabla

2.- Creo un Nuevo VCL Forms

3.- Añado al formulario un TIBDatabase y un TIBTransaction de la pestaña Interbase.

4.- En TIBDatabase.DefaultTransaction le asigno el TIBTransaction y en el TIBTransaction.DefaultDataBase le asigno el TIBDatabase.

5.- Doble click en el TIBDatabase y en las opciones marco local, busco mi base de datos en la carpeta donde la tengo y la agrego con el botón Browse, en este caso la he llamado PRUEBA.GDB, user pongo SYSDBA, password masterkey, dejo character set como none,desmarco login prompt y le doy a Test. Me sale "unavailable database".

Si en vez de local marco la opcion Remote, pongo server localhost y Protocol TCP, el resto igual, le doy a Test y el error es "Your username and password are not defined. Ask your database administrator to set up an Interbase login".

Casimiro Notevi
13-08-2013, 16:13:10
¿Puedes poner copias de las pantallas con los parámetros del ibdatabase, ibtransaction, etc.?

Por cierto, ¿has probado a poner la ruta con la IP? : 192.168.100:c:\prueba.gdb

¿Qué versión de interbase usas?

gesjug
13-08-2013, 16:22:58
Uso Interbase XE3 version 11.0.2.0, lo he bajado de embarcadero.

con la ip no me localiza el host.

Casimiro Notevi
13-08-2013, 16:30:36
Pues si no das más información, poco podemos ayudar, no tenemos acceso a tu ordenador.


Por cierto, ¿por qué no usas firebird?, es mejor, gratis y libre.

gesjug
13-08-2013, 16:45:04
porque en el trabajo tengo que usar esto :(
voy a ver si puedo poner alguna captura

gesjug
13-08-2013, 18:21:44
Os pongo la captura del ibconsole donde se ve una tabla de pruebas que he creado llamada perros:

http://s2.subirimagenes.com/otros/previo/thump_85778311.jpg

Y la captura del IBDataBase:

http://s2.subirimagenes.com/otros/previo/thump_85778422.jpg

Casimiro Notevi
13-08-2013, 18:28:04
Ahí no se puede ver nada :confused:

gesjug
13-08-2013, 18:37:45
pense que se ampliaban al pinchar sobre ellas :(

gesjug
13-08-2013, 20:58:16
No consigo ponerlo mas grande, pongo el enlace vale?

La base de datos:
http://subefotos.com/ver/?7d6e6ac13fbafb01c7d3e61373cec94do.jpg (http://subefotos.com/ver/?7d6e6ac13fbafb01c7d3e61373cec94do.jpg)

El ibdatabase:
http://subefotos.com/ver/?e73f9ecfb09c1dd9ccabfd5e2f40d3cbo.jpg

A ver si logro sacar algo que estoy perdidisimo :(

Casimiro Notevi
13-08-2013, 21:05:31
¿Seguro que poniendo la IP no funciona?
¿Qué has puesto en el componente IBTransaction?

gesjug
13-08-2013, 21:08:14
En ese nada, solo pongo lo enlazo con el TIBDatabase.

Si pongo la ip, me da el error de usuario

Casimiro Notevi
13-08-2013, 21:20:20
En ese nada, solo pongo lo enlazo con el TIBDatabase.
Si pongo la ip, me da el error de usuario

Pues entonces volvemos al principio, te has saltado este paso:

Aquí (http://www.intitec.com/varios/Delphi_conexion_firebird_con_ibx.pdf) tienes un simple tutorial, usando IBX

gesjug
14-08-2013, 09:26:47
Antes de nada perdona mi torpeza :(

He vuelto a empezar de cero otra vez, paso a paso ese manual, pero al llegar al momento en que hay que comprobar la conexión, hasta ese momento no indica que haya que hacer nada con el IBTransaction.
He probado registrar una nueva base de datos directamente en una carpeta de C: por si había problemas con la ruta, pero me sigue dando el mismo error, "Your username and password are not defined. Ask your database administrator to set up an Interbase login".
Tengo todo exactamente como viene en el manual, y el usuario está creado, ya que es el que viene por defecto... no lo entiendo.

Casimiro Notevi
14-08-2013, 09:56:09
No sé de donde eres, pero podría llegarme si no estás muy lejos.

Es que así, sin ver :confused:

gesjug
14-08-2013, 09:58:36
No lo se, la verdad es que estoy muy despistado porque he seguido mil manuales de cero, yo creo que algo he echo mal con la base de datos en vez de con delphi, porque no puede ser ya otra cosa :(
Alguna opción que tenga deshabilitada o algo, no se..

gesjug
14-08-2013, 10:02:22
Estoy mirando, y en la base de datos que tengo creada, donde user permissions me salen 2, PUBLIC y SYSDSO y sin permisos, no debería aparecer ahí el usuario SYSDBA? Sin embargo si miro los usuarios conectados a la base de datos haciendo click con el segundo botón, si que me aparece SYSDBA.
Aunque también probé a crear un usuario llamado XX con todos los permisos y me aparecía ahí pero me daba el mismo error.

gesjug
14-08-2013, 10:08:25
Como añado un usuario nuevo a una base de datos ya creada? porque lo que hice fue crear un usuario y con este usuario crear la base de datos, pero aun asi SYSDBA tendria que tener acceso...

Casimiro Notevi
14-08-2013, 10:23:06
je, je, je... ¿y cuándo pensabas contarnos esa parte? ;)

Ni idea de lo que hace en ese aspecto interbase, dejé de usarlo en 1999, cuando salió firebird.
Tendrás que consultar la documentación.

gesjug
14-08-2013, 10:38:43
jejeje, porque como yo a la base de datos estoy conectado, el servidor activado, creo tablas y todo y seguí todos los pasos de manuales de Interbase y funcionaba, pues pensaba que sería cosa del propio Delphi... :(
Voy a trasladar mi problema al foro de Interbase a ver si pueden ayudarme.

Muchas gracias por todo.

Casimiro Notevi
14-08-2013, 10:41:44
^\||/
.

gesjug
14-08-2013, 10:45:08
Buenos dias:

Tengo mi base de datos creada en interbase llamada prueba.gdb, he creado una tabla y la he rellenado, con el ibconsole, estoy conectado y todo. Uso el usuario SYSDBA y la contraseña masterkey.

A la hora de conectarla con delphi, me salta el error "Your username and password are not defined. Ask your database administrator to set up an Interbase login". Todo en Delphi está bien configurado asique le hemos estado dando vueltas aqui en el foro y hemos llegado a la conclusión de que el problema lo debo tener en Interbase y no en Delphi.

Cree un nuevo usuario y con este nuevo usuario creé una nueva database pero me da el mismo problema.

Al acceder con SYSDBA no debería tener problema supongo.
Cuando miro el user permissions de la base de datos solo me salen dos usuarios y sin permisos, PUBLIC y SYSDSO, no se si es por eso, pero no debería porque intento acceder con el administrador no?

Gracias por su ayuda.

Casimiro Notevi
14-08-2013, 12:00:21
¿Por qué abres un nuevo hilo para el msmo tema? :confused:
He unido ambos.

Debes consultar la documentación o mirar en la web de Interbase (Embarcadero) por si hay alguna característica en el producto sobre el tratamiento de los usuarios que sea el origen de tu problema.

gesjug
14-08-2013, 12:14:03
Lo abrí para poder ponerlo en el otro foro, no sabía que se podia cambiar de foro sin crear uno nuevo.

Casimiro Notevi
14-08-2013, 12:28:07
Es que es el mismo foro, se llama: "Firebird e Interbase"

Casimiro Notevi
15-08-2013, 10:11:11
gesjug, ¿cómo lo llevas?, ¿lo has resuelto?

cointec
15-08-2013, 19:03:03
Hola, el problema de usuario y clave se puede deber a la versión de gds32.dll que utilizas. Si intentas conectar a interbase XE* con una gds32.dll de versiones anteriores, esta utiliza un algoritmo de cifrado distinto y aparecerá ese error. Lo más sencillo es verificar que versiones de la librería gds32 tiene instaladas y utilizar la que viene con interbase XE. Ten en cuenta también que si has instalado la versión de 64 bits de interbase, tendrás que localizar la versión de 32, ya que delphi es 32 bits.

La otra opción, es actualizar la tabla de usuarios admin.ib y modificar el algoritmo de cifrado por el de versiones anteriores de interbase. De esta forma podrás utilizar gds32 de versiones pre XE. Busca en Google el comando o en los manuales de interbase.

jans.albornoz
19-06-2015, 19:40:16
Tuve el mismo problema, lo soluciones pegando el dll "gds32" (C:\Program Files\Embarcadero\InterBase\bin) en la carpeta bin de delphi (C:\Program Files (x86)\Embarcadero\Studio\16.0\bin64)

espero te solucione el problema