Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-01-2005
Fernando Fernando is offline
Miembro
 
Registrado: ago 2003
Posts: 77
Poder: 21
Fernando Va por buen camino
SELECT con contraseña

Hola Delphimaniacos:

Utilizo un TADOQuery para abrir una tabla que se encuentra en otra base de datos, me explico:

SELECT * FROM Clientes IN 'C:\MiBaseDeDatos.mdb'

hasta aquí todo bien, el problema es que la base de datos tiene contraseña y no sé la forma de integrarla en el SELECT, he intentado todo:

SELECT * FROM Clientes IN 'C:\BaseDeDatos.mdb' pdw='contraseña'
SELECT * FROM Clientes IN 'C:\BaseDeDatos.mdb' password='contraseña'
etc.

Gracias de antemano.
Responder Con Cita
  #2  
Antiguo 23-01-2005
Avatar de salvica
salvica salvica is offline
Miembro
 
Registrado: mar 2004
Ubicación: Albacete (España) ... En un lugar de la Mancha ...
Posts: 304
Poder: 21
salvica Va por buen camino
Eso dependerá del lenguaje que utilices para lanzar la consulta, por ejemplo
con PHP y MYSQL
Código PHP:
 // ---- establece conexión con la BD
 
$conexion   = @mysql_connect"localhost""usuario""password" ) or
                         die( 
"Conexión no establecida" );
 
mysql_select_db"mi_base_de_datos"$conexion );
 
// ---- hacer la query y ejecutarla
 
$sqlAccess  mysql_query"SELECT * FROM clientes"$conexion );
 if( 
$row mysql_fetch_array($sqlAccess) ) {
     
// ---- procesar los resultados
 
} else {
     
// ---- no hay resultados que procesar
 
}
 
// ---- cerrar la conexión establecida
 
mysql_close$conexion ); 
si lo haces con DELPHI
Código Delphi [-]
 var
   miConexion : TConnection;
   miQuery : TQuery;
 begin
   miConexion := TConnection.Create;
   try
     miConexion.Host := 'localhost';
     miConexion.User := 'usuario';
     miConexion.Password := 'password';
     miQuery := TQuery.Create;
     miQuery.Connection := miConexion;
     miQuery.SQL.Add( 'SELECT * FROM clientes' );
     try
       myQuery.ExecSQL;
      { -- procesar los resultados -- }
     except
       { -- Hay un error, de conexión o de ejecución del contenido de la QUERY -- }
     end;
   finally
     miConexion.Free;
   end;
 end;
Como veras, es todo muy parecido
1º - Creas una conexión a un HOST, con el USUARIO y la PASSWORD
2º - Ejecutas la conexión (si hay error, mensaje al canto y acabas)
3º - Ejecutas la QUERY y la procesas
4º - Cierras la conexión establecida

Saludos y que te sirva
Salvica
Responder Con Cita
  #3  
Antiguo 25-01-2005
Fernando Fernando is offline
Miembro
 
Registrado: ago 2003
Posts: 77
Poder: 21
Fernando Va por buen camino
Gracias por responder.

Utilizo TADOConnection y TADOQuery para realizar la consulta.

El problema es que la base de datos del servidor tiene contraseña y no quiero quitársela. Así que, al intentar hacer la consulta, me indica que "la contraseña no es correcta" y no sé la sintaxis para enviar la contraseña dentro del query.
Responder Con Cita
  #4  
Antiguo 25-01-2005
Avatar de mamcx
mamcx mamcx is online now
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
No es dentro del query, es en la configuracion de la conexion. Fijate en el ejemplo.
__________________
El malabarista.
Responder Con Cita
  #5  
Antiguo 27-01-2005
Fernando Fernando is offline
Miembro
 
Registrado: ago 2003
Posts: 77
Poder: 21
Fernando Va por buen camino
Creo que no me expliqué bien:

Utilizo TADOConnection, que tiene conexión con la base de datos del servidor. Solamente utilizo queries temporales, tanto para consulta como para actualizaciones.
Lo que intento hacer es tener una base de datos en la PC Cliente para que allí se creen los queries y tablas temporales y así aligerar la carga de trabajo del Servidor (si esto es posible)

Ejemplo:

TADOConnection1 (con la base de datos del servidor)
TADOConnection2 (con la base de datos del cliente)
Creo un query temporal conectado a TADOConnection2
con este query quiero leer la base de datos del servidor

SELECT * FROM Clientes IN 'DATABASE=\\Servidor\Datos\BaseDatos.mdb;;PWD=asdf'

al ejecutarlo muestra el error: "La contraseña no es válida"

Lo que no he podido encontrar es la sintaxis para que incluya la contraseña.

Espero que esté más explícito.

Gracias.
Responder Con Cita
  #6  
Antiguo 04-02-2005
Avatar de sflexas
sflexas sflexas is offline
Miembro
 
Registrado: feb 2005
Posts: 19
Poder: 0
sflexas Va por buen camino
Unhappy Solucion Barata

Lo que podrias hacer es antes de ejecutar la consulta que le cambies al adoConnection el valor del campo, loginPromp a falso, luego cuando vuelves lo recuperas
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 23:25:49.


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