FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
conexion por red con firebird
He mandado mensajes y veo que ya no me responden, porfavor les pido su ayuda, me quiero conectar por medio de la red desde una maquina cliente a la que hace las veces de servidor, utilizando firebird 1.5.
que tengo que instalar en las maquinas cliente, para poder acceder al archivo de base de datos que esta en el servidor, utilizo los componentes IBTransaction y IBDatabases de delphi 5, y para crear las tabla uso el IBExpert. Ya copie el archivo fbclient.dll en la maquina cliente en la carpeta system32 y nada. Gracias! atte noe |
#2
|
||||
|
||||
Hola,
no dices que te ocurre, ni si te da algún error de conexión... ¿Qué valor (ruta de la BD) pones en la propiedad DatabaseName del componente TIBDataBase? |
#3
|
||||
|
||||
Hola.
La forma correcta de hacerlo, es instalando el cliente de Firebird. Es decir utilizar el instalador de Firebird, y durante la instalación indicar que se quiere instalar el cliente (y no el servidor como se hace por defecto). Aunque te puede funcionar copiando solo los archivos fbclient.dll y gds32.dll, si no haces la instalación completa, te encontrarás con detalles como el que no tengas las descripciones de los errores que puedan saltar, ... Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#4
|
||||
|
||||
como refrescar los cambios
Ya lo hice buscando en los foros antiguos el de Giniromero:
Lo que hice fue, hacer doble click sobre mi transacción y ponerma en "ReadCommitted" Después, todas mis tablas las vinculé con los siguientes dos procedures en eventos: *Events --> AfterPost procedure TForm1.TableAfterPost(DataSet: TDataSet); begin IBTransCenta.CommitRetaining; end; *Events --> AfterCancel procedure TFrmMainCenta.TableAfterCancel(DataSet: TDataSet); begin IBTransCenta.RollbackRetaining; end; pero como hago para refrescar los cambios que se estan haciendotanto en el cliente como en el servidor, en paradox era con refresh y actualizaba la pantalla con los cambios que se habian hecho en otras maquinas, como lo hago con los componentes IBTransaction y IBDatabase, utilizo un IBTable para enlazarme a las tablas. gracias! |
#5
|
||||
|
||||
perdon!
Se me habia olvidado comentarles que ya me pude conectar desde la maquina cliente al servidor creando una conexion a una unidad de red es decir:
H:\Aplicacion\datos esto lo tengo en la propiedad Databasename del componente IBDataBase. hay una mejor forma.? gracias ha tambien les agradecere me puedan ayudar en mi pregunta anterior de este mismo hilo gracias! |
#6
|
||||
|
||||
Hola.
Debes quitar esa unidad de Red. La base de datos del Servidor no tiene que estar compartida de ninguna forma. Solo debe poder acceder a ella el Servidor. (Probablemente tienes instalado un Servidor de Interbase en el Cliente, y está abriendo directamente la base de datos, lo que solo puede llevar a que se corrompa rapidamente la misma). La forma correcta de acceder a la base de datos desde el cliente, es mediante una cadena de este tipo : Nombre_Servidor:Ruta_local_en_el_servidor\Nombre_Base_de_Datos Es decir, algo como : SERVER200:C:\Datos\Clientes.gdb Respecto a la pregunta sobre como ver los datos introducidos desde otras estaciones, simplemente se hace con un Refresh sobre el IBTable (igual que hacias con Paradox). Aunque tendrás que cambiar tus CommitRetaining por Commit, puesto que el CommitRetaining no finaliza realmente la transacción. Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#7
|
||||
|
||||
Perdon Marc. El programa que rengo en mi maquina cliente es el firebird 1.5 pero cuando lo instale, no me dio ninguna opcion para instalarlo como cliente; y en mi maquina cliente en donde le doy la ruta que dices para que apunte a donde esta la base de datos que esta en el servidor. Pregunto, mi programa debe estar en la maquina cliente tambien, es decir el puro ejecutable o que cosa debo hacer, la verdad ya me estoy enredando y me gustaria que me lo explicaras un poco mejor, te agradezco tu ayuda, ya que veo que sabes bastante.
Gracias |
|
|
|