Jump to content


Photo

Error de conexion delphi 7 Sql server 2005 express


  • Please log in to reply
83 replies to this topic

#1 lsedr

lsedr

    Advanced Member

  • Miembros
  • PipPipPip
  • 272 posts

Posted 20 January 2011 - 08:59 AM

estoy haciendo una  aplicacion en delphi 7 conectada a una BD SQL SERVER 2005 EXPRESS y al  cambiar de PC lo que hice fue que ''separe'' la BD de SQL para poderla  copiar en una memoria usb y poderla llevar a una laptop que tambien  tiene delphi y sql, pero me da el siguiente error.

el SQL me  funciona bien y puedo ver mi BD pero el problema es cuando abro el  programa en delphi que da un error de conexion. utilizo componentes ADO

gracias


 

Attached Files


  • 0

#2 eduarcol

eduarcol

    Advanced Member

  • Administrador
  • 4483 posts
  • LocationVenezuela

Posted 20 January 2011 - 09:04 AM

y la cadena de conexion apunta a la misma BD?
  • 0

#3 enecumene

enecumene

    Webmaster

  • Administrador
  • 7419 posts
  • LocationRepública Dominicana

Posted 20 January 2011 - 09:06 AM

y la cadena de conexion apunta a la misma BD?


(y)
  • 0

#4 lsedr

lsedr

    Advanced Member

  • Miembros
  • PipPipPip
  • 272 posts

Posted 20 January 2011 - 09:26 AM

y la cadena de conexion apunta a la misma BD?


que es la cadena de conexion ???

En el ADOconecction tengo esto:
Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Mibase;Data Source=ASUSSQLEXPRESS;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=EMACHINES;Use Encryption for Data=False;Tag with column collation when possible=False


el problema de este error esta cuando cambio la aplicacion para otra pc.

existe alguna forma de indicarle al adoconnection que se conecte directamente a la BD sin que la pc donde se valla a correr el porograma tenga instalado SQL SERVER 2005 EXPRESS ???
  • 0

#5 enecumene

enecumene

    Webmaster

  • Administrador
  • 7419 posts
  • LocationRepública Dominicana

Posted 20 January 2011 - 09:30 AM

Pues eso mismo es la cadena de conección, verifica las propiedades source, Workstation ID y catalog son las mismas en ambos casos.

Saludos.
  • 0

#6 lsedr

lsedr

    Advanced Member

  • Miembros
  • PipPipPip
  • 272 posts

Posted 20 January 2011 - 09:42 AM

Pues eso mismo es la cadena de conección, verifica las propiedades source, Workstation ID y catalog son las mismas en ambos casos.

Saludos.


Y no existe una forma de que el ADOconecction se conecte con simplemente indicarle la direccion de la BD, pues la aplicacion sera utilizada solo de manera local ??
  • 0

#7 enecumene

enecumene

    Webmaster

  • Administrador
  • 7419 posts
  • LocationRepública Dominicana

Posted 20 January 2011 - 09:51 AM

Es que de manera Local o en Red siempre será de la misma forma, debes indicar la ruta, Usuario e ID de la Base de datos en cada equipo.
  • 0

#8 felipe

felipe

    Advanced Member

  • Administrador
  • 3283 posts
  • LocationColombia

Posted 20 January 2011 - 09:54 AM

Aclarar algo, ¿acaso ADO no usa ODBC?


Saludos!
  • 0

#9 enecumene

enecumene

    Webmaster

  • Administrador
  • 7419 posts
  • LocationRepública Dominicana

Posted 20 January 2011 - 09:55 AM

Aclarar algo, ¿acaso ADO no usa ODBC?


Saludos!


No necesariamente, ya que ADO trabaja con distintos drivers de conección.
  • 0

#10 lsedr

lsedr

    Advanced Member

  • Miembros
  • PipPipPip
  • 272 posts

Posted 20 January 2011 - 10:18 AM

Es que de manera Local o en Red siempre será de la misma forma, debes indicar la ruta, Usuario e ID de la Base de datos en cada equipo.


Bueno, aunque ahora mismo no tengo la PC portatil a mano (que es donde instalé la aplicación y me dio el error mencionado), solo tengo  esta PC donde todo me funciona bien, dentros de unas horas buscare la otra PC y haré las pruebas que me indicas.

Ahora bien, recuerdo que cuando trate solo de abrir el programa con Delphi 7, SIN EJECUTARLO, la PC se paralizaba y eso me llamo la atención.

Entonces, la pregunta específica sería: antes de ejecutar el programa en la otra PC, debo cambiar las propiedades que me indicas ???
  • 0

#11 enecumene

enecumene

    Webmaster

  • Administrador
  • 7419 posts
  • LocationRepública Dominicana

Posted 20 January 2011 - 10:23 AM

Pues claro mi estimado, pos si no estará causando los mismo errores y problemas.
  • 0

#12 lsedr

lsedr

    Advanced Member

  • Miembros
  • PipPipPip
  • 272 posts

Posted 21 January 2011 - 01:09 AM

Aunque ya resolví el problema amigos, gracias a sus ayudas, ahora tengo otra duda, pues cómo hago entonces para poder compilar el soft ya terminado y colocar todo el programa en un ejecutable con un instalador como INNOSETUP, entonces como indicarle al ADO la conexion si el programa una vez compilado se instalará en diferentes PC ??
  • 0

#13 felipe

felipe

    Advanced Member

  • Administrador
  • 3283 posts
  • LocationColombia

Posted 21 January 2011 - 07:35 AM

Lo mejor es que la ruta de la base de datos sea algo que no tenga pérdida, quizá una carpeta en C:\ o en Archivos de programa, algo que no varíe de equipo a equipo para evitar este tipo de problemas.


Saludos!
  • 0

#14 lsedr

lsedr

    Advanced Member

  • Miembros
  • PipPipPip
  • 272 posts

Posted 24 July 2011 - 11:42 PM

Lo mejor es que la ruta de la base de datos sea algo que no tenga pérdida, quizá una carpeta en C:\ o en Archivos de programa, algo que no varíe de equipo a equipo para evitar este tipo de problemas.


Saludos!


Exactamente eso es lo que necesito, programar el ADO Conecction para que funcione igual en todas las PC que se instalará el soft.

Pienso instalar la base de datos de la siguiente manera en todas las pc:

C:\BD\Mibase

Pero no se como hacerlo. :undecided:
  • 0

#15 enecumene

enecumene

    Webmaster

  • Administrador
  • 7419 posts
  • LocationRepública Dominicana

Posted 25 July 2011 - 08:05 AM

¿Por qué no usas las variables de entorno de Windows?.

Saludos.

  • 0

#16 Wilson

Wilson

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2137 posts

Posted 25 July 2011 - 09:18 AM

  Ado también podría obtener la cadena de conexión en su evento OnBeforeConnect a partir de un archivo INI, en el que puedes hacer cambios sin necesidad de volver a compilar la aplicación. 
  Saludos
  • 0

#17 lsedr

lsedr

    Advanced Member

  • Miembros
  • PipPipPip
  • 272 posts

Posted 27 July 2011 - 07:22 PM

  Ado también podría obtener la cadena de conexión en su evento OnBeforeConnect a partir de un archivo INI, en el que puedes hacer cambios sin necesidad de volver a compilar la aplicación. 
  Saludos


a ver si estoy entendiendo, debo crear un archivo .ini donde le especifique al ADOConnection cómo debe conectarse a la BD que estará, por ejemplo en la carpeta C:\Mibase

cómo haría ese archivo ??
  • 0

#18 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4266 posts
  • LocationCosta Rica

Posted 27 July 2011 - 07:38 PM

Hola
Solo cambiale los datos.
Aqui esta un archivo INI.
Saludos

Attached Files


  • 0

#19 lsedr

lsedr

    Advanced Member

  • Miembros
  • PipPipPip
  • 272 posts

Posted 27 July 2011 - 08:18 PM

Hola
Solo cambiale los datos.
Aqui esta un archivo INI.
Saludos


el fichero dice esto:

[BD]
Path="C:\TuCarpeta\TuBD.MDB"
[Logon]
Auto="No"
Login=""
Pass=""


- Sólo debo cambiar el Path ??
- Dónde guardo el archivo ??
- Cómo ejecutarlo y cuándo ?
  • 0

#20 Caral

Caral

    Advanced Member

  • Moderador
  • PipPipPip
  • 4266 posts
  • LocationCosta Rica

Posted 27 July 2011 - 08:55 PM

Hola
Solo cambia el path.
En el mismo directorio que el exe (el programa).
En el evento Oncreate del Datamodule o del form principal.
Se tiene que generar el codigo que llame al archivo INI y conecte con la BD.
Saludos
  • 0




IP.Board spam blocked by CleanTalk.