Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-07-2005
Aprendiendo Aprendiendo is offline
Miembro
 
Registrado: may 2003
Ubicación: España
Posts: 122
Poder: 22
Aprendiendo Va por buen camino
Question Conexión tablas paradox por internet

Ante todo un salud@

Necesitaría saber como conectar varios equipos de la misma empresa pero en distintos edificios. Debería de ser vía Internet (las tablas están diseñadas en formato Paradox).

Esperando una pronta respuesta, reciban un cordial saludo...
Responder Con Cita
  #2  
Antiguo 06-07-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Paradox es una base de datos de escritorio lo que significa que en principio sólo puedes acceder a sus tablas directamente y no através de Internet.

Alguna vez, por experimentar sólamente, configuré un acceso através de Internet usando DataSnap pero ignoro cuan bueno sea su rendimiento ni qué suceda con varias estaciones accediendo simultaneamente.

Básicamente tienes que crear una aplicación servidor en donde estén tus tablas y agregar un RemoteDataModule. En él pones un Table y un DataSetProvider enlazados entre sí por cada tabla a la que quieras acceder y registras el servidor corriendo la aplicación con el parámetro /regserver.

Ya sin este parámetro vuelves a correr la aplicación y a la vez corres la aplicación scktsrvr.exe localizada en la carpeta bin de Delphi. scktsrvr sirve para controlar las peticiones entrantes.

En la aplicación cliente colocas una componente SocketConnection. En su propiedad Address pones la IP del servidor y apuntas su propiedad ServerName al servidor. El servidor debe estar ejecutándose para poder hacer el enlace. El nombre del servidor lo escoges al momento de agregar el RemoteDataModule en la aplicación servidor.

Por cada tabla en la aplicación servidor colocas un ClientDataSet enlazado al SocketConnection por su propiedad RemoteServer y escoges el provider correspondiente de la lista de su propiedad ProviderName.

A partir de este punto puedes usar el ClientDataSet como cualquier otro DataSet. Puedes enlazarlo a controles dbaware, o usar directamente sus métodos de navegación y edición.

// Saludos
Responder Con Cita
  #3  
Antiguo 07-07-2005
Aprendiendo Aprendiendo is offline
Miembro
 
Registrado: may 2003
Ubicación: España
Posts: 122
Poder: 22
Aprendiendo Va por buen camino
Thumbs up

Muchas gracias por tu pronta respuesta, es más o menos lo que quería saber, los componentes a utilizar para poder conectar vía internet.

Decir que lo más lógico hubiera sido crear desde cero una verdadera base de datos servidor-cliente (interbase) pero en un principio se descartó esta posibilidad pero lo demanda la sociedad y ahora el cliente quiere poder conectarse a estas tablas en paradox desde cualquier sitio.

Así que con esta información trataré de conectar los clientes con el servidor.

Un saludo...
Responder Con Cita
  #4  
Antiguo 26-12-2006
Avatar de Crandel
[Crandel] Crandel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Parana, Argentina
Posts: 1.475
Poder: 23
Crandel Va por buen camino
como lo resolviste al final?
__________________
[Crandel]
Responder Con Cita
  #5  
Antiguo 26-12-2006
Aprendiendo Aprendiendo is offline
Miembro
 
Registrado: may 2003
Ubicación: España
Posts: 122
Poder: 22
Aprendiendo Va por buen camino
Question

Pues con MySQL, tuve que rediseñar ciertos apartados del sistema pero como era una aplicación pequeña, no tuve muchos problemas.

Un saludo...
Responder Con Cita
  #6  
Antiguo 07-01-2007
Avatar de Crashthebig
Crashthebig Crashthebig is offline
Miembro
 
Registrado: oct 2006
Ubicación: Republica Dominicana
Posts: 59
Poder: 18
Crashthebig Va por buen camino
Talking Creo que esto es lo que debewrias hacer

en verdad solamente lo he intentado con mi propio IP mientras estoy sonectadoo a internet por via dial-up pero creo que de todos formas debe funcionar

el disco duro remoto debe estar como un recurso compartido para que tu puedas acceder a el luego en tu aplicacion crea un boton y eviale este vodigo a tu tabla:
table1.tablename:='\\66.12.40.92\c\datos\socios.db'
table1.active:=true;

el Ip que coloque lo hice albitrariamente pero en lugar de ese debes colocar el ip de la maquina en donde esta la base de datos remota mira a ver si te funciona.
Responder Con Cita
  #7  
Antiguo 20-06-2007
DarkDudae DarkDudae is offline
Miembro
 
Registrado: abr 2006
Posts: 94
Poder: 19
DarkDudae Va por buen camino
Con un poco de retraso...

Antes de nada, siento responder tan tarde.

Yo estuve peleandome bastante tiempo con este tema... al final se puede conseguir casi como si fuera en red.... ¿pero qué ocurre? pues que paradox, a no ser una BBDD cliente/servidor, cada vez que necesitaba hacer una consulta, se descargaba toda la tabla entera en un temporal. Si estamos hablando de tablas con cierto número de registros que pueden ocupar varios megas... pues te puedes morir esperando, lo cual hace al programa inviable.

La solución es pasarse a una BBDD cliente/servidor, o bien, programarse una aplicación servidor, como dice román, que intercepte las solicitudes desde otros programas "cliente", y que las procese desde el mismo ordenador en el que se alojan los datos y los reenvíe ya filtrados a los clientes. No obstante, es una solución bastante compleja.

Saludos
Responder Con Cita
  #8  
Antiguo 24-06-2007
Avatar de Crandel
[Crandel] Crandel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Parana, Argentina
Posts: 1.475
Poder: 23
Crandel Va por buen camino
Cita:
Empezado por DarkDudae
La solución es pasarse a una BBDD cliente/servidor, o bien, programarse una aplicación servidor, como dice román, que intercepte las solicitudes desde otros programas "cliente", y que las procese desde el mismo ordenador en el que se alojan los datos y los reenvíe ya filtrados a los clientes. No obstante, es una solución bastante compleja.
al final, es menos compleja de lo que parece, fue la solucion que tome, ahora ya me cambie de empresa, pero la migración a MS SQL estaba en marcha, pero el sistema es demaciado grande para acerlo rapido y va a demorar muchos meses el cambio y revisar que todo funcione bien.

Con este metodo pude implementar lo que los clientes estaban pidiendo sin tener que esperar tanto tiempo.
__________________
[Crandel]
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 13:35:29.


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
Copyright 1996-2007 Club Delphi