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 10-11-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
Ado Connection

Hola, mi pregunta es muy clara y sencilla , ¿Como logro hacer una aplicacion CLiente - Servidor de base de datos SQL con ADO en Delphi???

y a la hora de trasladar ¿Que archivos debo copiar?

gracias.
54LU2

Última edición por cmm07 fecha: 10-11-2008 a las 13:03:05.
Responder Con Cita
  #2  
Antiguo 10-11-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Si te refieres a instalarlo en otra máquina, deberías comprobar que tienes actualizadas las MDAC de Microsoft o instalar el cliente de SQL.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 10-11-2008
Avatar de droguerman
droguerman droguerman is offline
Miembro
 
Registrado: abr 2005
Ubicación: tierra
Posts: 999
Poder: 20
droguerman Va por buen camino
La forma más sencilla es usar un componente ADOConnection (que lo puedes encontrar en la paleta ADO), configurar la propiedad ConnectionString y elegir Provider for SQL Server. Hecho esto configurar la propiedad Connected al valor true.

Para empezar a trabajar necesitas usar componentes ADOTable o aun más recomendable ADODataset para recuperar datos, tambien puedes usar componentes ADOStoredProc o ADOCommand, debes assignar a cualquiera de estos componentes la propiedad Connection para que apunte al ADOConnection que configuraste previamente.

Para redistribuir la aplicación, pues, por lo general no hay muchos problemas con sistemas como Windows XP sin embargo es recomendable instalar antes MDAC en su última versión que lo puedes encontrar en la web de microsoft
__________________
self.free;
Responder Con Cita
  #4  
Antiguo 10-11-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
Hola, gracias por su respuestas, pero tengo un servidor donde esta el Delphi y SQL, y tengo un cliente que es donde esta mi aplicacion( al instalar el MDAC 2.8 me da un error: MDAC 2.8 RTM no es compatible con esta versión de Windows. Todas sus características ya forman parte de Windows.), en delphi hao los sig.pasos:

1.- Creo una app..
2.-agrego el ADOCONNECTION.
3.- me voy a los tres puntitos "..."en COnnectionString, luego en Build.
4.- elijo Microsoft OLE DB Provider for SQL Server y le doy a siguiente.
5.-en el primer edit, osea el nombre del servidor, coloco la ip publica del servidor: xxx.xxx.xxx.xxx
6.- en user : sa y en pass: XXXXXXXXX
7.- y al abrir el ComboBox de abajo en seleccione la base de datos se queda esperando un rato y me aparece el sig error:
[DBNETLIB][ConnectionOpen(Connect()).]No Existe el servidor SQL Server o se ha denegado el acceso, luego hago clic en aceptar y :
Error al iniciar sesión. No se puede recuperar la información del catálogo, y no me funciona nada.

PD: Los firewall y antivirus los desactive toditos, funciona prefecto en el equipo local pero en el cliente o remotamente pues, el error...

¿Que puede ser?

gracias
54LU2

Última edición por cmm07 fecha: 10-11-2008 a las 16:04:02.
Responder Con Cita
  #5  
Antiguo 10-11-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Perdón, yo había entendido que la aplicación ya estaba funcionando (ya la tenías) y sólo te faltaba instalarla en otra máquina.

En cuanto a ADO, en la WIKI del club hay varios ejemplos concretos y explicados paso a paso de cómo debes hacer para conectarte mediante ADO a una Base de Datos.

Aquí tienes uno y aquí otro, muy bien explicados. Aunque funcionan sobre Access, es igual o muy similar sobre SQL Server.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #6  
Antiguo 11-11-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
muchas gracias Neftali, voy a ver y analizar los ejemplos, gracias.

Edito: Estaba revisando pero lamentablemente en ninguno sale como hacer un CLiente/Servidor y está en Access y yo necesito SQL Server, ya pude conectar la base de datos pero en el equipo local, ahora necesito hacerlo remotamente(Cliente - Servidor)

gracias de todas formas

54Lu2...

Última edición por cmm07 fecha: 11-11-2008 a las 01:38:47.
Responder Con Cita
  #7  
Antiguo 11-11-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
sigo sin solucionar nada , nose porque me marca ese error, que fome porque necesito urgente esto del CLiente/Servidor de SQL Server por IP publica, si alguien tiene alguna solucion, tiene que ser para delphi 2009 no importa si es ADO, DBX4 u otros con tal que no sea Interbase(no me gusta la manera de como funciona) y que sea rapido no hay problema.....

gracias.
Responder Con Cita
  #8  
Antiguo 11-11-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola cmm07,
No dispongo de SQL Server en mi equipo por lo que no podría probar donde está el fallo.

En el segundo post del hilo comentaste de que al instalar MAC te dio un error ¿No será por casualidad de que esto haya causado alguna anomalía? Por otro lado no nos comentas que versión de SQL Server, ni del Windows... he estado buscando en la red de redes sobre dicho error y llego a muchos foros en donde preguntan por dicho error... lo curioso es que en ninguno de todos esos foros alguien ha dado una solución. Lo que tienen en común todos estos post es que se han empleado en la mayoría SQL Server 2003. ¿Es tu caso?

Lo extraño es que dices que puedes establecer conexión en forma local, pero no a través de red. ¿Por casualidad hay algún router, swich, o algo por el estilo en el "medio"?

La verdad es que hay muchas preguntas más para hacerte, cuanto más detalles nos puedas aportar vamos a poder ser más precisos y encontrar más rápido la solución o incluso alguna alternativa.

Dices que puedes contemplar otro motor de base de datos, mientras que no sea Interbase. Porqué no pruebas, por el momento, si puedes establecer conexión con una DB en Access (de paso nos sacamos alguna duda). Hay muchos motores, el que puedo recomendar es Firebird. Se he comentado mucho al respecto de este motor (ve al sub-foro dedicado a éste), y si también podrías optar por MySQL, PostgreSQL, Oracle, Informix, entre otros.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #9  
Antiguo 11-11-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Vamos a ver...
Las cosas o se hacen bien o mejor no hacerlas.
Si quieres conectar con ADO, pues postea la pregunta y las dudas uy errores que te van saliendo, pero si lo intentas hacer todo deprisa, sin explicar con detalle lo que estás haciendo y los errores que te pasan y encima vas probando diferentes cosas es imposible seguir el hilo y ayudarte.

Cita:
Empezado por cmm07 Ver Mensaje
Edito: Estaba revisando pero lamentablemente en ninguno sale como hacer un CLiente/Servidor y está en Access y yo necesito SQL Server, ya pude conectar la base de datos pero en el equipo local, ahora necesito hacerlo remotamente(Cliente - Servidor)
Como te dije los ejempos eran de guía para usar ADO.
Ahora que ya sabes cómo utiliar los componentes podemos seguir adelante. Conectar en local y en remoto es lo mismo simpleente que debes utilizar como nomnbre de servidor uno distinto o la dirección IP.

Cita:
Empezado por cmm07 Ver Mensaje
sigo sin solucionar nada , nose porque me marca ese error, que fome porque necesito urgente esto del CLiente/Servidor de SQL Server por IP publica,
Si no nos dices el error que te marca no es posible ayudarte.
Asegurate de que tienes acceso a la IP del servidor y que los puertos correspondientes están abiertos.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #10  
Antiguo 11-11-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
Hola, primero quiero agradecerles por todo lo que estan haciendo por mi, de verdad mcuhas gracias, pondré un poco más de detalles:

-Trabajo con SQL Server 2000 y lamentablemente no puedo cambiar, hoy me dijieron que no podía ser otro motor de datos

- Tengo Windows XP Service Pack 3 Profesional (el Cliente es SP2)

respecto al MDAC, antes de que lo bajase ya estaba el problema con lo del SQL por lo tanto no creo que haya creado alguna anomalía

-Utilizo un router pero me aseguré de que este no molestara, también abrí el puerto 1433 que es del SQL Server, y lo raro que lo hago con MySQL con los ZeosLib y funciona perfecto, pero como aún no llega para delphi 2009 no puedo esperar y tuve que elegir ADO.

-El error que pasa cuando intento conectar es el siguiente:
[DBNETLIB][ConnectionOpen(Connect()).]No Existe el servidor SQL Server o se ha denegado el acceso, luego hago clic en aceptar y aparece otro mensaje:
Error al iniciar sesión. No se puede recuperar la información del catálogo, y no me funciona nada.

- El formato de la Ip es la siguiente: xxx.xxx.xxx.xxx (Es una ip publica)

- y lo más raro es que puedo conectar en forma local pero solo con el Nombre del equipo: USUARIO-XXXXXXXX, pero también intenté ese metodo para conectarme remotamente y también me marco el error, también marca ese error en el equipo local pero solo cuando coloco la ip publica, porque si coloco 127.0.0.1 funciona perfecto(ojo solo en el equipo local), no sé como explicarme mejor es medio dificil lo que me sucede, pero aver si con esto me podeis ayudar...


PD: busco en google y hay varios con el mismoproblema, pero veráz que en ninguna hay una solución en concreto.

gracias.
54lu2
Responder Con Cita
  #11  
Antiguo 11-11-2008
Avatar de boreg
boreg boreg is offline
Miembro
 
Registrado: oct 2007
Ubicación: México, México
Posts: 76
Poder: 17
boreg Va por buen camino
A mi solo se me ocurre que en la cadena de conexion estas indicando utilizar la Seguridad integrada de Windows NT y quizás el cliente desde el que intentas conectarte no está autorizado. En fin algo más para descartar.


Saludos
Responder Con Cita
  #12  
Antiguo 12-11-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
hola, gracioas por intentar ayudar, pero lamentablemente voy a tener que descartar porque ya me seguré con seguridad integrada y sin seguridad, pero sigo investigando sobre el tema, si tengo la solución la pondre aqui..

gracias
Responder Con Cita
  #13  
Antiguo 12-11-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
Hola, estoy cada vez más cerca de mi problema, el problema no es nada que ver ni con los MDAC, ni los componentes ADO, ni OLE DB, ni Delphi, ni nada de eso, el problema es que al colocar e intentar conectar por medio de una IP, me dice que No Existe el servidor SQL Server o se ha denegado el acceso, en este caso descubrí que Se está denegando el acceso, solamente debo descubrir como permitir entradas a conexiones remotas en SQL Server 2000 y estoy al otro lado, cuando descubra esto lo pondré, si ustedes saben haganmelo saber...

gracias..

54LU2
Responder Con Cita
  #14  
Antiguo 24-11-2008
Avatar de 2-D@monic
2-D@monic 2-D@monic is offline
Miembro
 
Registrado: may 2007
Posts: 94
Poder: 17
2-D@monic Va por buen camino
Qué versión de Sql Server 2000 utilizas.......... que yo sepa la versión interprise ya viene pre-configurada para conexiones remotas... pero eso sería lo más lógico.... no está configurada para conexiones remotas.
__________________
Soy pésimo en lo que mejor hago y por eso me siento bendecido.
Responder Con Cita
  #15  
Antiguo 30-11-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
hola pues utilizo la SQL SERVER 2000 PERSONAL alomejor no vienen con la conexiones remotas conectadas, si supieran como activar esta opcion se los agradeceria mucho.....Disculpa por responder tarde , antes no pude XD

gracias

54LU2
Responder Con Cita
  #16  
Antiguo 01-12-2008
Avatar de 2-D@monic
2-D@monic 2-D@monic is offline
Miembro
 
Registrado: may 2007
Posts: 94
Poder: 17
2-D@monic Va por buen camino
Ok, nunca trabajé con la versión PERSONAL pero bueno, en la enterprise 2000 (ojala que sea igual que en la PERSONAL) te vas primero al Administrador Corporativo de Sql Server (inicio->programas->sql server->administrador corporativo) donde creas las BdD, haces consultas sql, etc. una vez en el Administrador Corporativo hay una opción llamada "Propiedades de configuración de Sql Server" en el menú "Herramientas" osea menù Herramientas->Propiedades de configuración de Sql Server una vez ingresado a la opción te vas a la pestaña General y haces clic en el botón Configuración de Red, abre una ventata con dos pestañas: General y Bibliotecas de Red, en la pestaña General verás que hay dos columnas, una con protocolos deshabilitados y otra con protocolos habilitados, lo que debes hacer es habilitar el protocolo TCP/IP para conexiones remotas (llevar a la segunda columna de protocolos habilitados), y listo...... Sql Server escucha conexiones remotas en una red TCP/IP (este protocolo es el más utilizado).

Ojo que para que escuche conexiones remotas Sql Server, el Servicio debe estar iniciado...........(inicio->programas->sql server->administrador de servicios).

Tu servidor debe estar configurado (con ip, etc.)

y por si acaso el puerto de conexion remota en sql server es el 1433 por defecto (por si acaso para el firewall).

Todas estas configuraciones en el servidor.

Saludos.
__________________
Soy pésimo en lo que mejor hago y por eso me siento bendecido.
Responder Con Cita
  #17  
Antiguo 01-12-2008
cmm07 cmm07 is offline
Miembro
 
Registrado: nov 2007
Posts: 526
Poder: 17
cmm07 Va por buen camino
gracias. lo probaré y comentaré luego de formatear mi pc

54LU2
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
Connection lost to database AMINOA2R Conexión con bases de datos 0 04-06-2007 11:49:23
ADO Connection - unknown error hoobit Conexión con bases de datos 4 13-02-2007 22:50:25
Connection to BD SQLServer hmv Conexión con bases de datos 1 30-10-2006 19:35:51
Tado connection jdattoli Conexión con bases de datos 6 16-08-2005 15:47:47
socket connection Slash Internet 0 23-08-2004 19:46:50


La franja horaria es GMT +2. Ahora son las 18:47:44.


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