Ver Mensaje Individual
  #16  
Antiguo 27-03-2008
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Reputación: 21
AzidRain Va camino a la fama
Pero seguimos cayendo en lo mismo, supongamos el siguiente pseudocódigo para el hipotético instalador:

Código:
  Si Existe la dll
      Si puedo conectarme a MySQL en el puerto 3306 en localhost
          Creo las bases de datos y las tablas y procedo a la instalación.
      de lo contrario
         Error: No es posible conectarme al servidor en localhost
  de lo contrario
    No está instalado (!!) MySQL
Por definición un instalador de cualquiera que sea el programa no tiene por que leches presuponer que ya se encuentra instalado el servidor fulano, mengano o perengano. El servidor de bases de datos es un programa INDEPENDIENTE de la aplicación en cuestión por lo que lo más que puede hacer el instalador es preguntar en donde se supone que está instalado y actuar en consecuencia:

Código:
  Desempaqueta la DLL que usa el componente mediante el cual te conectas a MySQL   
(Zeos, MyDac, "MyAbuela") en la carpeta del instalador. 
  Escribe "Te advierto que para instalar este programa es necesario que previamente esté
 instalado  MySQL  y que hayas dado de alta un usuario válido con privilegios en la base de datos "xxxx".
  Pregunta "Dame la dirección del servidor MySQL?"
  Pregunta "Con qué usuario voy a entrar a MySQL?"
  Pregunta "Con qué password?"
  
  Si puedo conectarme al servidor con los datos indicados
    voilá...procede a crear la base de datos y crear las tablas.
    continúa la instalación.
  de lo contrario
    Error:  No fue posible conectarse al servidor indicado con los datos proporcionados.
Por mera seguridad hay que dar de alta el usuario de MySQL y crear la base de datos a la cual tendrá acceso. No quiero ni pensar en que se les ocurra darle el root como usuario para que haga lo que se le pegue la gana con las bases de datos.

Mis chavos, no se confundan, MySQL, FireBird, Posgress y SQL Server son todas aplicaciones INDEPENDIENTES de su software y por mucho que quieran automatizar las tareas NUNCA deben instalarse al mismo tiempo. No por nada en muchos proyectos de desarrollo se asigna un DBA para que se haga cargo de pelearse con el motor de su elección a condición de que podamos hacer lo que necesitamos con las tablas.

Como ya mencioné y al parecer nadie leyó, si mi aplicación necesita MySQL debo indicarlo en la documentación y al principio de la instalación. El usuario "es responsable" de tener instalado MySQL y con el ususario que se le pide para poder continuar.

Pero en fin, si queremos seguir haciendo chapuzas pues hagámoslas que caray.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita