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 07-09-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Conectar Base de Datos con Sockect

Hola a todos
Sigo pensando en esto y pues no llego, a ver si se les ocurre algo, o si por el contrario suena tonto.
Consideracion: Casi todos conocemos como conectarnos a bases de datos con ADOConection.o con Zeos, es muy simple y sin problemas. ahora bien se me ocurre lo siguiente:
Pregunta: Se puede conectar de forma similar con una base de datos por medio de los componentes (clientesocket y serversocket).
Se como conectar uno con otro por medio de IP y Puerto, se conectan bien pero no se como pedirle al serverSocket que me enseñe la base de datos como lo hace el tipico AdoConection o algo asi.
Bueno club a ver si se les ocurre algo y salgo de esto de una vez por todas.
Saludos
Responder Con Cita
  #2  
Antiguo 07-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
¿Reinventar la rueda?

En muchas de las bases de datos que conocemos, la parte cliente instalada en el equipo establecerán comunicación via sockets con su contraparte servidora, atendiendo un protocolo que permite que se comuniquen y que la magia fucione.

Allí tenemos al cliente de firebird (fbclient.dll) o al de interbase (gds32.dll) que soportan el protocolo TCP/IP toda la maquinaria de oracle, que también soporta TCP/IP.

AdoConnection, Zeos o cualquier otra capa de acceso a datos se apoya en estos clientes, atacando sus API's, cosa que puede resultar extremadamente complicada para el programador de aplicaciones comun, como yo.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #3  
Antiguo 07-09-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Me parece muy puntual pero:
Sigo con la duda. un simple no se puede o estas loco me sentaria mejor.
Hablar de Dll suena bien pero no concreta, ya que mi conocimiento de estas es minimo.
Tal vez una explicacion mas cerca de la tierra la podria entender mejor.
Saludos
Responder Con Cita
  #4  
Antiguo 07-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Cita:
Empezado por Caral
Me parece muy puntual pero:
Sigo con la duda. un simple no se puede o estas loco me sentaria mejor.
Hablar de Dll suena bien pero no concreta, ya que mi conocimiento de estas es minimo.
Tal vez una explicacion mas cerca de la tierra la podria entender mejor.
Saludos
Si se puede (todo se puede). La pregunta para mi es ¿tiene sentido?. ¿por que no hacer windows de nuevo? ¿o linux?

Si hablar de una DLL ya te parece complicado... ni hablar de hacer la ingeniería inversa e implementar el protocolo de comunicación de Oracle..

Saludos.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #5  
Antiguo 07-09-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Sigo insistiendo, por que no:
Por que no hacer windows o linux de nuevo, por que no es que hasta aqui llegamos, la tecnologia paro, apaguen las maquinas.
La pregunta creo es puntual y por mas tonta que parezca la pregunta mas tonta es la que no se hace.
Sigo con la duda.
Saludos
Responder Con Cita
  #6  
Antiguo 07-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
quizas no he entendido tu duda original.

si es: ¿Se puede conectar a un servidor de base de datos mediante tcp/ip?, la respuesta es: Si se puede.

Si la pregunta es ¿que debo hacer para conectarme a un servidor de base de datos mediante tcp/ip y lanzar un query?
La respuesta es: Debes establecer una conexión por sockets al puerto del servidor en donde escucha la BD y ejecutar la secuencia de transmisiones que el protocolo de dicha base de datos manda para realizar los diferentes pasos de una conexión a la bd)

Si la pregunta es: ¿Puedo hacer esto desde delphi?
la respuesta es: ¡Claro que si!

Si la pregunta es: ¿como pedirle al serversocket que me enseñe la base de datos cmo lo hace el típico AdoConnection?
La respuesta es: No se lo que eso significa, pues un AdoConnection no "enseña la base de datos" de ninguna forma.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #7  
Antiguo 07-09-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Gracias Jachguate ahora si me entiendes vamos bien
Si me indicas que puedo conectarme con la base de datos por medio de tcp/ip,
Pregunta: Crees que me puedo conectar a una base de datos access con esto. y si es asi que componente usar y como.
Uso Delphi 6
Con respecto al ado tienes razon, este simplemente me conecta, la tabla la veo desde el adotable u query. (me explique mal lo siento).
Saludos
Responder Con Cita
  #8  
Antiguo 07-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Cita:
Empezado por Caral
Pregunta: Crees que me puedo conectar a una base de datos access con esto. y si es asi que componente usar y como.
Access no es una base cliente servidor, por lo que no hay un servidor del otro lado al cual conectarse. Desconozco como lo hará el "jet" de m$, pero supongo que será una apertura compartida del archivo con manejo de bloqueos, al estilo de paradox o fox. Eso te lo digo por puro concepto, porque no he trabajado a profundidad con access, y quien quita y el propio sistema operativo abre un puerto al cual conectarse. En todo caso, hacer ingeniería inversa de los protocolos de M$, que no están documentados por ningún lado, es mas dificil todavía. Si no, preguntales a los del proyecto Samba

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #9  
Antiguo 07-09-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Gracias jachguate
A por otra que ya conestaste mi duda, a seguir aprendinendo que no queda otra.
Saludos y gracias de nuevo.
Responder Con Cita
  #10  
Antiguo 12-09-2006
Avatar de Alexander
Alexander Alexander is offline
Miembro
 
Registrado: may 2004
Posts: 235
Poder: 20
Alexander Va por buen camino
Smile Pueden existir varias soluciones, según el problema

Según lo que entiendo vas a conectarte a una base acces desde otras máquinas, por tcp/ip.

Me imagino que para no utilizar una carpeta compartida de la base de datos o algo similar.

Lo que puedes es crear un pequeño protocolo y haces dos exes uno que solicite y otro que reciba y responda. El que solicita está en tus clientes y el otro en el servidor. y listo, allí hay comunicación por sockets.

Yo creo que deberías explicar exactamente que quieres y que no quieres hacer, o cual es tu entorno y sus limitaciones para poder dar una solución u opciones, y no preguntar de forma ambigua donde se crean respuestas ambiguas.


Blue Sky.

Alexander.
__________________
Cielos azules
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Conectar una base de datos a mi programa cesararturo2004 Conexión con bases de datos 3 24-01-2006 18:26:43
Conectar Base datos con ClientDataset Coco_jac Conexión con bases de datos 2 17-05-2005 23:03:10
Conectar Con Una Base De Datos En Interbase Argaron PHP 3 05-08-2004 22:44:47
conectar crystal a base datos Repelus Impresión 0 13-04-2004 17:44:01
Conectar a uan base de datos jtellof Conexión con bases de datos 4 08-09-2003 12:17:05


La franja horaria es GMT +2. Ahora son las 10:56:00.


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