Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-09-2008
Avatar de RebeccaGL
RebeccaGL RebeccaGL is offline
Miembro
 
Registrado: ene 2008
Posts: 199
Poder: 17
RebeccaGL Va por buen camino
MySQL Ayuda. Estoy estancado

Tengo los componentes y el manejador de MySQL instalado y todo esta bien, habro este otro hilo porque el otro nadie lo contesta.

Es la primera vez que trato de usar este manejador de bases de datos, y estoy estancado en este problema hace tres semanas y no puedo salir. Sino no lo resuelvo ya, creo que tendre que seguir usando el BDE.

Les explico:

Cuando yo creo un programa lo que hago primero, es crear un directorio donde voy a trabajar el programa con los fuentes y las tablas, luego creo un instalador con el installshield é incluyo el ejecutable.exe y las tablas.

Ahora bien, lo que hace el sistema al ejecutarse en la nueva pc es buscar el directorio que tiene asignado es decir el directorio donde fue creado originalmente el programa osea en mi PC pero al no encontrarlo por estar instalado en otra PC extrae el directorio donde se esta ejecutando y ese directorio lo asigna al componente TDatabase y desde ese directorio lee las tablas.

Como hago esta tarea con MySQL y los componentes Zeos, MySQL siempre me lee el directorio por defecto del manejador MySQL ...\Data y si lo cambio manulamente en el archivo mysql.ini solo leera de un solo programa y los demas programas que pudiera tener en MySQL como hago.

En MySQL como direcciono y le asigno desde mi programa el directorio donde tiene que leer las tablas.

Y para hacerlo un programa individual instalable que drivers tengo que incluir, es algo asi, como el BDE.

Última edición por RebeccaGL fecha: 20-09-2008 a las 15:19:09.
Responder Con Cita
  #2  
Antiguo 20-09-2008
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
(...) habro este otro hilo porque el otro naide lo contesta.
Para eso no abras otro hilo (que acabo de borrar por duplicado) sino que puedes añadir un mensaje al mismo, de forma que el hilo "suba" y se ponga el primero y a la vista de todos.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 20-09-2008
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Poder: 17
rgstuamigo Va por buen camino
Thumbs up

A ver amigo quiero entenderte mejor ¿con que gestor de base de datos estabas trajando anteriormente?
Y por que quieres direccionar a las tablas donde esta la base de datos?
Me gustaria que seas mas explicativos para poder ayudarte.
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita
  #4  
Antiguo 21-09-2008
Avatar de MaMu
MaMu MaMu is offline
Miembro
 
Registrado: abr 2006
Ubicación: Argentina
Posts: 863
Poder: 19
MaMu Va por buen camino
No te entendi nada, pero instalaste el ODBCMySQL3.5 ??? (para ADO).
Por lo que veo, no entiendo mucho para que usar el MySQL en modo local, levantando las tablas de un directorio, te recomiendo para eso firebird, ya que puedes continuar usando ZEOS y me resulta mucho mejor.

Saludos
__________________
Código Delphi [-]
 
try 
ProgramarMicro(80C52,'Intel',MnHex,True);
except
On Exception do
MicroChip.IsPresent(True);
end;
Responder Con Cita
  #5  
Antiguo 23-09-2008
Avatar de RebeccaGL
RebeccaGL RebeccaGL is offline
Miembro
 
Registrado: ene 2008
Posts: 199
Poder: 17
RebeccaGL Va por buen camino
Cita:
Empezado por rgstuamigo Ver Mensaje
A ver amigo quiero entenderte mejor ¿con que gestor de base de datos estabas trajando anteriormente?
Y por que quieres direccionar a las tablas donde esta la base de datos?
Me gustaria que seas mas explicativos para poder ayudarte.

Anteriormente estaba trabajando con el BDE.

Ahora, porque quiero direccionar a las tablas?.
En la BDE se crean tablas en determinado directorio, y no es como MySQL en donde se crea una Base de Datos y dentro de ellas las Tablas.

Ahora, mira si yo creo un sistema en mi PC por ejemplo en la carpeta

c:\Delphi\Proyectos\MySistema\

Es, en esta carpeta donde estara mi base de datos y mis tablas ok.

Pero al venderlo, lo instalo en otra PC estamos, ¿de que directorio se lee la base de datos en la otra PC? a eso me refiero.

Mira tengo que cargar el directorio donde se instalo el sistema, y luego indicarle al sistema que desde ese directorio lea la base de datos y por consiguiente las tablas. Bueno de esa manera trabajaba con el BDE, me imagino que en SQL debe ser algo parecido.


Conclusión.

Hay alguna forma de indicarle a MySQL que lea de otro directorio las base de datos, y esto claro haciendolo desde los componentes Zeos.

Última edición por RebeccaGL fecha: 23-09-2008 a las 02:54:08.
Responder Con Cita
  #6  
Antiguo 23-09-2008
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
Cita:
Empezado por connor Ver Mensaje
Hay alguna forma de indicarle a MySQL que lea de otro directorio las base de datos, y esto claro haciendolo desde los componentes Zeos.
La respuesta corta es no.

La respuesta larga es que no necesitas tal cosa. Piensa que aun cuando planees colocar las tablas en la misma pc que la aplicación, éste no es el esquema usual en una aplicación cliente-servidor. En este punto el BDE y MySQL difieren radicalmente. El BDE te da acceso a bases de escritorio, es decir, bases -justamente- que viven (a grandes rasgos) en el mismo ordenador que el ejecutable, mientras que con MySQL, tus bases se encuentran en un ordenador externo al que accedes mediante una IP. Detrás de esa IP puede haber un sistema Windows, Unix, etc., cada cual con su propio sistema de archivos; pero nada de eso importa a las aplicaciones externas, pues ni siquiera tienen acceso directo a esos archivos, sólo al servidor en sí de MySQL.

El hecho de que coloques el servidor de MySQL en el mismo ordenador, no cambia la situación, es sólo una cuestión geográfica; el acceso a las tablas sigue siendo a traves de una IP, aún siendo una IP "local" como 127.0.0.1 (también conocida como localhost).

De hecho, tienes que considerar que el servidor de MySQL y tu aplicación, son dos cosas distintas, tu aplicación ni siquiera tendría que ocuparse de instalar el servidor, sólo de ejecutar los scripts necesarios para crear la base y sus tablas.

Dicho de otra forma: tu aplicación simplemente va a hacer uso de un servicio ya existente, y es este servicio (MySQL) el que decide dónde colocar las bases de datos.

-------------------

Ahora bien, si aun después de lo dicho, insistes en querer colocar tus tablas en tus directorios, puedes optar por usar MySQL embedded, que no es otra cosa que una copia del servidor MySQL incrustada en tu aplicación, que sólo tu aplicación verá y que, aquí sí, puedes definir su propio directorio de datos.

Toma en cuenta, no obstante, que si -como mencionas- puede haber varias aplicaciones en el mismo ordenador accediendo a bases de MySQL, no tiene caso duplicar recursos incrustando una copia en cada aplicación.

// Saludos
Responder Con Cita
  #7  
Antiguo 23-09-2008
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Además de lo que dice Román, la licencia de MySQL NO te permite distribuirlo junto con tu aplicación de ninguna manera a menos que tu aplicación sea open source (lo cual no creo). La opción embedded ya no está disponible en la versión "community" de MySQL sino solo en la comercial.

En todo caso tu aplicación debe poder configurarse para acceder a un servidor el cual se le pueda especificar mediante un ini o algo similar. Y una vez conectado proceder a la creación de las bases de datos y tablas que va a utilizar por lo que uno de los requisitos para quien compre tu programa sería contar con un servidor MySQL configurado y corriendo así como crear el usuario que tu indiques para que se conecte tu programa.

Si no quieres estar sujeto a esta limitante de la licencia de MySQL entonces opta por Firebird el cual meparece que no la tiene.

Yo resuelvo este detalle de forma simple con mis clientes: Por un lado facturo mi sistema únicamente con lo cual mi cliente obtiene licencia para utilizarlo. Y por el otro lado facturo la asesoría o servicio de instalación del mencionado servidor así como la configuración del mismo, todo esto en sus propias instalaciones e incluso descargando el software en sus propios equipos. De esta forma mi cliente tiene 2 licencias, la de mi software y la de MySQL, éste último por supuesto lo podrá utilizar para muchos otros fines si así lo quiere.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
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
MySQL Gratis AYUDA!! cmm07 Varios 8 11-06-2008 14:30:02
Ayuda con MySQL pelaorb68 SQL 4 16-03-2007 22:32:47
Generar pdf apartir de un reporte crystal report..ayuda, estoy desesperada! chivix Impresión 3 06-03-2007 18:24:29
Estoy estancado pepelu1975 Conexión con bases de datos 2 20-02-2004 17:14:54


La franja horaria es GMT +2. Ahora son las 19:45:58.


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