PDA

Ver la Versión Completa : Conexion Firebird VB6


pzhero
03-05-2004, 18:27:09
Hola a todos aqui de nueva cuenta moliendo,

tengo un gran problema, he creado una base de datos para hacer pruebas, con el dialecto3 con el IB Expert, pues bien hice pruabas de acceso desde diferentes maquinas con esta misma aplicación, y pues todo bien comprobe que puedo conectarme a esa misma base de datos desde distintoas puntos simultáneamente, el problema vino cuando realice el primer programa en VB6 para accesar a esta base, (utilizo VB6 porque el desarrollo ya estaba iniciado en este y todavia no domino muy bien delphi), no tenia abierto ningun programa que accesara a mi base y pues me realiza la conexión sin nungún problema utilizo cualquiera de las siguientes cadenas de conexion.


server = "DRIVER=Firebird/InterBase(r) driver;UID=sysdba;PWD=masterkey;DBNAME=127.0.0.1:l:\firebird\PRUBABLOBLS.FDB;"
server = "DRIVER={XTG Systems InterBase6 ODBC driver};DB=localhost:l:\firebird\PRUBABLOBLS.FDB;UID=SYSDBA;PWD=masterkey"
Set Cnn = New ADODB.Connection
Cnn.Open server


Pero cuando abro el IBEXPERT o cualquier otro programa que accese a esa base datos y tengo conectado elprogramita de visual o viceversa cualquiera de ellos me me manda el siguiente error


Unsuccussfull execution caused by a system error that precludes
successfull execution of subsequent statments.
I/O error for file "l:\firebird\prubablobs.fdb".
Error while trying to open file.
El proceso no tiene acceso al archivo porque esta siendo
utilizado por otro proceso.


que esta sucediendo??? ¿que tengo que configurar para que funcione correctamente la conexion multiple digamoslo asi con ODBC???


Gracias por sus respuestas
hasta luego

guillotmarc
03-05-2004, 21:36:50
Hola.

Esta ruta de conexión parece muy rara. ¿ I: es una unidad mapeada a una carpeta de red ?.

No tienes que acceder a la base de datos mediante una unidad de red, es más, la base de datos ni tan siquiera tiene que estar compartida (puesto que no se utiliza para nada la red de Windows para acceder a ella).

Supón que la base de datos está en la carpeta C:\Datos\BaseDatos.gdb, dentro del Servidor SERVER. Entonces la cadena de conexión será :
SERVER:C:\Datos\BaseDatos.gdb

NOTA : Si te has podido conectar a la base de datos, desde IB-Expert, es porqué quizá también estás instalando el servidor de Firebird en todas las maquinas. No tienes que hacerlo, solo hay que instalarlo en la maquina donde vas a guardar las bases de datos (En las otras maquinas únicamente hay que instalar el cliente de Firebird, que es una de las opciones que sale en la instalación).

Saludos.

pzhero
04-05-2004, 01:13:00
bueno parece raro pero no es i la unidad, es L , y para continuar no es una unidad de red, es otra unidad de disco duro que tengo en la pc que me funcionará como servidor, que en otras palabras es como si tuviera "C:\BASEDEDATOS\BASE.FDB" puesto que es un disco duro local no una unidad de red ni carpeta compartida, y en efecto solo tengo el cliente instalado en las otras máquinas,... una vez aclarado esto, que crees que este pasando???? tengo que configurar alguna otra cosa para utilizar ODBC???

guillotmarc
04-05-2004, 10:09:10
Hola.

¿Que versión de Interbase utilizas?. ¿ Puede ser que intentes abrir la base de datos, a la vez, mediante un Firebird embedded y un servidor Firebird ?. Porqué el error parece indicar que el servidor no puede abrir el archivo de base de datos, debido a que ese archivo ya está abierto por otro proceso (supuestamente otro servidor).

Saludos.

guillotmarc
04-05-2004, 10:10:45
Hola.

O bien tienes un Interbase 6/Firebird 1, y un Firebird 1.5 instalados a la vez en la misma máquina. Y tienes la base de datos abierta por un lado por el Firebird 1.5, y el ODBC la intena abrir mediante el IB6/FB1. La solución está en desinstalar uno de ellos.

Saludos.

Gydba
04-05-2004, 13:44:27
Como comentario aparte y en consideración del uso de VB les dejo un link interesante sobre acceso a FB desde VB:
http://fbdll4vb.sourceforge.net/

pzhero
04-05-2004, 19:17:12
ok. muchachos creo que el error era el que comenta guillotmarc ,
tenia instalado la version 6 de interbase, la solo desinstale y ahora si ´puedo accesar sin problemas al parecer, (puesto que solo he probado la conexión) gracias a todos, ademas voy a revisar el link que mando Gydba.