Estoy pensando migrar del MySQL al SQLite

430 views
Skip to first unread message

ZeRoberto

unread,
Aug 28, 2017, 1:44:15 AM8/28/17
to publicesvfoxpro
Tengo un detalle con aplicaciones publicadas en la web, resulta que en algunos casos, cuando un cliente quiere descargar la demo para probarlo, instalar el MySQL es un problema ya que en algunos casos da errores durante el proceso de instalación, así que estoy pensado migrar mi base de datos a SQLite pero mi preocupación son los procedimientos almacenados, no se si estos funcionaran bien o si es que el SQLite acepte algunos procesos, otro detalle serian los trigger ya que muchas de mis tablas actualizan otras al hacer una inserción o eliminación.

Tambien no se si el SQLite hay que instalar algún tipo de servidor como el MySQL o solo basta con los drivers ODBC.

He visto una aplicación hecho en Power builder que solo carga un pequeño programa que hace las veces del servidor, no se si el SQLite trabajara asi.

Espero respuestas

Gracias de antemano

Saludos

Carlos Miguel FARIAS

unread,
Aug 28, 2017, 7:11:26 AM8/28/17
to Grupo Fox
SQLite no tiene SGBD, simplemente un manejador de datos. No soporta Procedimientos almacenados.
Si te demo además necesita multiprocesamiento (varios usuarios concurrentes) tu imagen de performance (desempeño) va a ser horrible.
SQLite para modificar datos (o insertar) bloquea toda la bd. Por lo que si un usuario tira una transacción de inserción/actualización el resto de los usuarios no pueden ni consultar.
Saludos: Miguel: La Pampa (RA)
Larga Vida y Prosperidad
Que la Fuerza los acompañe

ZeRoberto

unread,
Aug 28, 2017, 8:10:29 AM8/28/17
to publicesvfoxpro
Vaya vaya... no contaba con eso... gracias por el dato Carlos Miguel

Saludos

Carlos Salcedo

unread,
Aug 28, 2017, 8:13:29 AM8/28/17
to publicesvfoxpro

hola 


Podrías indicar por que te quieres migrar ?

alguna falle importante ?


Saludos

Carlos




De: publice...@googlegroups.com <publice...@googlegroups.com> en nombre de ZeRoberto <zero...@gmail.com>
Enviado: lunes, 28 de agosto de 2017 7:10 a. m.
Para: publicesvfoxpro
Asunto: Re: [vfp] Estoy pensando migrar del MySQL al SQLite
 
Vaya vaya... no contaba con eso... gracias por el dato Carlos Miguel

Saludos
Un canal donde podrás encontrar recursos de programación hechos por mi Agradecimientos: - Saúl Piña Hernandez (Diseño del banner)

ZeRoberto

unread,
Aug 28, 2017, 8:38:46 AM8/28/17
to publicesvfoxpro
Hola Carlos el problema es la instalación del MySQL Server a veces por cosas internas no se instala bien, otro problema es que cada vez que formatean la maquina hay que restaurar el backup. Quiero algo como el SQL Anywere que en modo standalone carga un exe como servidor de datos y luego se cierra al finalizar el sistema.



El 28 de agosto de 2017, 07:11, Carlos Salcedo<caros...@hotmail.com> escribió:

hola 


Podrías indicar por que te quieres migrar ?

alguna falle importante ?


Saludos

Carlos




Enviado: lunes, 28 de agosto de 2017 7:10 a. m.
Para: publicesvfoxpro
Asunto: Re: [vfp] Estoy pensando migrar del MySQL al SQLite
Vaya vaya... no contaba con eso... gracias por el dato Carlos Miguel

Saludos

VFP Unlimited - Canal de Youtube
Un canal donde podrás encontrar recursos de programación hechos por mi Agradecimientos: - Saúl Piña Hernandez (Diseño del banner)

Carlos Salcedo

unread,
Aug 28, 2017, 8:58:27 AM8/28/17
to publicesvfoxpro

Ok entiendo


Pero me llama la atencion que deban formatear la maquina con tal frecuencia que sea un atenuante para cambiar el motor.


Saludos

Carlos




De: publice...@googlegroups.com <publice...@googlegroups.com> en nombre de ZeRoberto <zero...@gmail.com>
Enviado: lunes, 28 de agosto de 2017 7:38 a. m.

Para: publicesvfoxpro
Asunto: Re: [vfp] Estoy pensando migrar del MySQL al SQLite
Hola Carlos el problema es la instalación del MySQL Server a veces por cosas internas no se instala bien, otro problema es que cada vez que formatean la maquina hay que restaurar el backup. Quiero algo como el SQL Anywere que en modo standalone carga un exe como servidor de datos y luego se cierra al finalizar el sistema.



mapner

unread,
Aug 28, 2017, 11:43:13 AM8/28/17
to Comunidad de Visual Foxpro en Español
Hola,

si ya estás decidido por MySQL, ok, pero como alternativa está Firebird, que sobre el mismo conjunto de instrucciones SQL se puede usar con el modelo Cliente/Servidor (requiere instalación) o con el modelo Embedido que solo requiere una DLL en el cliente para su distribución. La versión Embebida se suele utilizar para catálogos de datos fijos o bien para demos.

Saludos

ZeRoberto

unread,
Aug 28, 2017, 1:08:14 PM8/28/17
to publicesvfoxpro
Uhmm no se pero no me acostumbro al FireBird, la cosa tambien va a ser migrar los procedimientos almacenados

Gracias y Saludos

Allan Raúl Acuña

unread,
Aug 28, 2017, 1:15:46 PM8/28/17
to publicesvfoxpro

En mi caso lo tengo conectado al servidor remoto y solo les digo a los clientes que el DEMO funciona con Internet. Si bien es cierto uno desea vender, pero también aplican restricciones.


Claro que el cliente consulta si al comprar va a funcionar sin Internet, entonces si se le instala.


Saludos cordiales.

Lic. Allan Raúl Acuña
Analista Programador
msn= allan...@hotmail.com
skype= NicEasySoft
            +(505) 8 999 8950
Managua, Nicaragua
Centroam??rica

Enviado: lunes, 28 de agosto de 2017 11:08:09 a.m.
Para: publicesvfoxpro
Asunto: Re: [vfp] Re: Estoy pensando migrar del MySQL al SQLite
 

LEWIS LOPEZ GOMEZ

unread,
Aug 28, 2017, 1:34:37 PM8/28/17
to publice...@googlegroups.com


Cordialmente
Lewis Lopez Gomez
GERENTE
LOPEZSOFT S.A.S NIT: 901091403 - 2
Diseño y desarrollo de Software a la medida
Diseño y desarrollo web y Móvil
 310 843 5431
Jesús le dijo: Yo soy el camino, la verdad y la vida; nadie viene al Padre, sino por mí. Juan 14:6


El 28 de agosto de 2017, 12:15, Allan Raúl Acuña<allan...@hotmail.com> escribió:

En mi caso lo tengo conectado al servidor remoto y solo les digo a los clientes que el DEMO funciona con Internet. Si bien es cierto uno desea vender, pero también aplican restricciones.


Claro que el cliente consulta si al comprar va a funcionar sin Internet, entonces si se le instala.


Saludos cordiales.

Lic. Allan Raúl Acuña
Analista Programador
msn= allan...@hotmail.com
skype= NicEasySoft
            +(505) 8 999 8950
Managua, Nicaragua
Centroam??rica


Enviado: lunes, 28 de agosto de 2017 11:08:09 a.m.
Para: publicesvfoxpro
Asunto: Re: [vfp] Re: Estoy pensando migrar del MySQL al SQLite

ZeRoberto

unread,
Aug 28, 2017, 1:45:30 PM8/28/17
to publicesvfoxpro
Allan

Actualmente lo estoy trabajando así, pero realmente el MySQL me a dado dolores de cabeza que estoy buscando una nueva alternativa

Lewis

No entiendo muy bien lo del MySQL Embedded

Saludos

LEWIS LOPEZ GOMEZ

unread,
Aug 28, 2017, 1:57:05 PM8/28/17
to publice...@googlegroups.com
Sacado de Manual 5.0 de MySQL.
1.5.1. El servidor MySQL incrustado (embedded)
La biblioteca del servidor incrustado libmysqld permite MySQL Server pueda trabajar con una gran
cantidad de dominios de aplicaciones. Usando esta biblioteca, los desarrolladores pueden añadir MySQL
Server en varias aplicaciones y dispositivos electrónicos, donde el usuario final no tiene conocimiento
que hay una base de datos subyacente. MySQL Server incrustado es ideal para uso tras aplicaciones en
Internet, kioskos públicos, combinación de hardware/software en llaveros, servidores de alto rendimiento
de Internet, bases de datos autocontenidas distribuidas en CD-ROM, y así.
Muchos usuarios de libmysqld se benefician de la licencia dual de MySQL. Para los que no quieran
estar ligados a la licencia GPL, el software está disponible con licencia comercial. Consulte http://
www.mysql.com/company/legal/licensing/ para más información de la política de licencias de MySQL
AB. La biblioteca incrustada MySSQL usa la misma interfaz que la biblioteca cliente normal, por lo que
es conveniente y fácil de usar. Consulte Sección 24.2.16, “libmysqld, la biblioteca del servidor MySQL
incrustado (embedded)”.
En Windows hay dos bibliotecas diferentes:
libmysqld.lib Biblioteca dinámica para aplicaciones threaded.
mysqldemb.lib Biblioteca estático para aplicaciones no threaded.


Cordialmente
Lewis Lopez Gomez
GERENTE
LOPEZSOFT S.A.S NIT: 901091403 - 2
Diseño y desarrollo de Software a la medida
Diseño y desarrollo web y Móvil
 310 843 5431
Jesús le dijo: Yo soy el camino, la verdad y la vida; nadie viene al Padre, sino por mí. Juan 14:6


ZeRoberto

unread,
Aug 28, 2017, 2:42:22 PM8/28/17
to publicesvfoxpro
Veo que hay que cambiar la programación también, para poder usar la API del MySQL

ZeRoberto

unread,
Aug 28, 2017, 2:52:52 PM8/28/17
to publicesvfoxpro
Otro problema que veo de esa librería es al momento de consultar una tabla

Saludos

Dsan

unread,
Aug 28, 2017, 3:01:46 PM8/28/17
to publice...@googlegroups.com
Hola ZRoberto, hay una solucion muy facil solo que te la voy a pasar por la noche,

lo unico que vas a hacer es levantar tu Servicio de mysql y listo nada de instalación, eso lo he hecho con vb.net igual he aprendido a crear instancias o attach database cosas que me gustaria hacer desde vfp, lo primero del servicio si lo podes hacer con vfp y facil.

No te quites la vida segui usando mysql.

Slds.
Douglas Sánchez

Antonio Meza

unread,
Aug 28, 2017, 3:22:05 PM8/28/17
to Comunidad de Visual Foxpro en Español
Creo que lo mas fácil y sencillo es hacer un manual sobre los errores que has tenido para instalar Mysql que invertir tiempo en cambiar de servidor de base de datos para la demo y que a demás luego uno que otro cliente te puede pedir que la información que capturo en la demo la quiere en la versión complete y tienes que hacer la migración de información.

saludos
Antonio Meza

ZeRoberto

unread,
Aug 28, 2017, 11:39:35 PM8/28/17
to publicesvfoxpro
Antonio lo peor que a veces salen errores que hasta ni se por que.

Saludos

HernanCano

unread,
Aug 29, 2017, 9:57:58 PM8/29/17
to Comunidad de Visual Foxpro en Español
ZeRoberto:
Tú como programador no puedes dar esa "conclusión".
Siempre debe ser posible conocer el por qué. De lo contrrario, escogiste la carrera equivocada.

Siempre hay formas de depurar una app sobre todo si tú mismo la creaste.

Mario López

unread,
Aug 29, 2017, 10:21:11 PM8/29/17
to Comunidad de Visual Foxpro en Español

@ZeRoberto: ¿y si en vez de instalar MySQL solamente descargás y ejecutás un MySQL portable, como por ejemplo XAMPP https://portableapps.com/apps/development/xampp ?
Así podrías descargarlo, configurarlo en tu PC local con tu BBDD, recortarlo (borrando apache, perl, etc por ejemplo) y después lo podrías distribuir como un archivo .7z o .zip, y para arrancar el MySQL en tu demo solamente tendrías que ejecutar el mysql_start.bat de la carpeta XAMPP

Mis 2 centavos,
Mario


HernanCano

unread,
Aug 29, 2017, 11:17:00 PM8/29/17
to Comunidad de Visual Foxpro en Español
ZeRoberto:
Tienes MySQL y quieres pasarte a SQLite, ppor que es embebido.
Te recomiendan FireBird, pero estás prevenido (pero no se sabe por qué).

Por lo que mencionas, tus problemas se deben a inconvenientes de hardware o de sistema operativo.

>> ... cada vez que formatean la máquina, hay que restaurar el backup ...

Eso es normal y es a lo que se enfrenta alguien (tú el programador, o el cliente por lo que tenga que maniobrar para dar soporte a sus operaciones en la empresa).

El problema es que haya que hacerlo con mucha frecuencia. Eso es otro tema..... Pero su solución no es cambiar de motor.

Conozco SQLite, y conozco FireBird. Ambos me gustan mucho precisamente por su característica de portables/embebidos (FireBird también tiene versión clliente-servidor). Y estoy programando con ellos.
MySQL también se puede manejar de forma portable desde VFP ( http://www.fpress.com/revista/Num0904/art.htm ).

Mi recomendación (entre cambiar de motor y escoger entre varias otras alternativas) es que continúes con MySQL (no te digo que cambies a MariaDB, pues no estás en el dilema de "libre o de pago", "quiero empezar a programar y no quiero pagar nada").

A mi modo de ver un "embebido" no tiene por qué ser mejor que un cliente-servidor (si alguien tiene un ejm de lo contrario, por favor expóngalo).
Por mi experiencia con ellos tres, no veo que SQLite ni FireBird sean lo suficientemente mejores que MySQL como para que sean alternativas ante los impasses que estás teniendo (repito: sí soy hincha de SQLite y de FireBird, pero quiero aportar a tu consulta).

Veo que SQLite soporta triggers temporales.... bueno: implica cambio de programación... que no es estrictamente algo admitido en este caso.... pero te lo comento.

HernanCano

unread,
Aug 29, 2017, 11:18:44 PM8/29/17
to Comunidad de Visual Foxpro en Español
Bien, Mario.
Tu propuesta es buenísima!!!

ZeRoberto

unread,
Aug 29, 2017, 11:29:26 PM8/29/17
to publicesvfoxpro
HernanCano


Estos solo son para instalar el driver ODBC desde el mismo fox, otra cosa es instalar el server, después de una instalada si no borraste bien te da unos errores. Yo los puedo instalar pero la cosa es cuando se quiere distribuir por la web, muchos de los que probar la aplicación apenas saben manejar la pc.

Saludos

HernanCano

unread,
Aug 29, 2017, 11:33:44 PM8/29/17
to Comunidad de Visual Foxpro en Español
Miguel:
¿Qué quiere decir ésto:...?

>>> SQLite no tiene SGBD...

SQLiteStudio

SQLite2009 Pro Enterprise Manager

ZeRoberto

unread,
Aug 29, 2017, 11:34:59 PM8/29/17
to publicesvfoxpro
Esta es una pequeña aplicacion hecho en powerbuilder con base de datos SQL Anywhere pero mira como carga un pequeño manejador de base de datos al momento de ejecutar el exe

El 29 de agosto de 2017, 22:29, ZeRoberto<zero...@gmail.com> escribió:
HernanCano


Estos solo son para instalar el driver ODBC desde el mismo fox, otra cosa es instalar el server, después de una instalada si no borraste bien te da unos errores. Yo los puedo instalar pero la cosa es cuando se quiere distribuir por la web, muchos de los que probar la aplicación apenas saben manejar la pc.

Saludos

mapner

unread,
Aug 30, 2017, 7:34:50 AM8/30/17
to Comunidad de Visual Foxpro en Español
El problema de VFP es que para acceder a motores de datos NO DBF (sean embebidos o cliente/servidor) lo debe realizar por ODBC o por OLE DB, y ahí requiere la instalación de los drivers correspondientes, o sea la app no termina siendo portable 100%.
En otros ambientes como Delphi, Lazarus o C++ se dispone de librerías o componentes de acceso directo al SGBD sin necesidad de instalaciones adicionales en el cliente, pero no es el caso de VFP.


 

ZeRoberto

unread,
Aug 30, 2017, 7:58:27 AM8/30/17
to publicesvfoxpro
@mapner Viste el programita del link que puse? como trabaja eso?

Saludos

Antonio Meza

unread,
Aug 30, 2017, 11:28:41 AM8/30/17
to Comunidad de Visual Foxpro en Español
ZeRoberto, como te explico Mapner, en VFP controla los dbf de forma nativa por lo que no necesita un manejador aunque lo hay por OleDb, y en el caso de PowerBuilder trae su manejador directo para AnyWhere por eso no necesitas instalar nada, es como si usaras PHP que ya trae las librerías para Mysql que no necesitas un driver odbc o OleDb, etc.

saludos
Antonio Meza

HernanCano

unread,
Aug 31, 2017, 12:25:13 AM8/31/17
to Comunidad de Visual Foxpro en Español
Sí.
Pero la ventaja con SQLite embebido y con FireBird embebido es que no se necesita instalar "adicionalmente" el motor elegido (es decir vía SETUP.EXE -o similar- por separado de la instalación de la aplicación VFP... o PHP).

Con registrar la .DLL de los dos motores mencionados (lo que se puede hacer desde el mismo VFP) ya lo puedes usar en la misma aplicación VFP.

Pero bueno... Ya ZeRoberto decidió que necesita procedimientos almadenados y entonces la investigación se va por otro lado.

HernanCano

unread,
Aug 31, 2017, 12:38:17 AM8/31/17
to Comunidad de Visual Foxpro en Español
Muy bonito el formulario de autenticación, pide usuario y contraseña.
El Bienvenid@ no tiene género para hacerlo genérico.
Es todo de color negro :(
Si se digita un usuario, aparece un MessageBox que dice Usuario inexistente.. (con dos puntos al final) (y si se deja vacío, también).
Si se le da Cancelar, sale sin otro mensaje estorboso.


El miércoles, 30 de agosto de 2017, 6:58:27 (UTC-5), ZeRoberto escribió:

ZeRoberto

unread,
Aug 31, 2017, 1:03:04 AM8/31/17
to publicesvfoxpro
Queridos amigos del foro @Antonio Meza u @Hernan Cano busco algo parecido al pequeño software que puse en link, cada vez que uno carga la aplicación también se carga una especie de manejador de base de datos (No se como se llama técnicamente), pero la idea es esa, con eso te evitas estar instalando aplicaciones servidor bastante pesadas que pasan de lo 50mb, seria bueno que todos los motores de base de datos tengan esta opción de instalar una pequeña aplicación que haga las veces de servidor tanto como local como en red. Lógicamente si lo vas a usar con mas maquinas tendrías que cambiarlo por una aplicación servidor mucho mas potente pero de la misma empresa. Con esta opción seria mas fácil distribuir programas por la internet ya que el usuario final sin mucho conocimiento pordría probar tu programa sin muchas complicaciones y sin tener que esperar una asistencia directa del programador.

Saludos

ZeRoberto

unread,
Aug 31, 2017, 1:03:52 AM8/31/17
to publicesvfoxpro
@Hernan Cano el usuario y contraseña es admin

Saludos

ZeRoberto

unread,
Aug 31, 2017, 1:11:09 AM8/31/17
to publicesvfoxpro
@Hernan Cano  lo del link es una pequeña aplicacion basica y lo que yo busco es como trabaja con su base de datos, no necesita muchas instalaciones y me doy cuenta que no es una apliacion embebida como muchos piensan, es una aplicacion que te da las dos opciones de trabajar tanto en modo local como en multiusuario, te lo digo porque yo vi algo parecido en otras empresas.

Saludos
El 31 de agosto de 2017, 00:03, ZeRoberto<zero...@gmail.com> escribió:
@Hernan Cano el usuario y contraseña es admin

Saludos

Daniel Sánchez

unread,
Aug 31, 2017, 10:06:51 AM8/31/17
to Comunidad de Visual Foxpro en Español
ZeRoberto me encanto lo simple como has enfocado tu aplicación, sin tanta complicación (aunque lo que complica las cosas son los clientes con sus pedidos).
Una pregunta usas un grid u otro tipo de lista me parece fantástico la forma que se visualiza sin marco, me hace pensar que estoy en un dispositivo móvil o en una web, como lo logras si es que puedes revelar tu secreto.

Saludos
--
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil +051-949398047 RPM #948615385
Trujillo - Perú

P  Sugerimos no imprimir este e-mail a menos que sea absolutamente necesario. Protejamos el medio ambiente.

ZeRoberto

unread,
Aug 31, 2017, 3:03:39 PM8/31/17
to publicesvfoxpro
Hola @Daniel Sanchez si te refieres a la aplicación que puse el link, te dire que no es mio, es de alguien mas y esta hecho en power builder.

El mio es este otro

Saludos

HernanCano

unread,
Aug 31, 2017, 10:27:46 PM8/31/17
to Comunidad de Visual Foxpro en Español
Tanto con SQLite como con FireBird (embebido) se puede lograr. Y no se necesita "instalar ni ejecutar" algo adicional. Al menos desde VFP.

>>> ... tanto en modo local como en multiusuario... 

Está bien.

HernanCano

unread,
Aug 31, 2017, 10:32:48 PM8/31/17
to Comunidad de Visual Foxpro en Español
Gracias.
Pagué la novatada (nerd).
Acabo de hacerlo y no funcionó. 
Me sentí tonto al ver tu respuesta. ¿No lo había yo pensado antes? La respuesta es: claro que sí!!!!!!!!! Pero evidentemente ayer tampoco funcionó.
Message has been deleted

William López

unread,
Sep 3, 2017, 2:31:18 PM9/3/17
to Comunidad de Visual Foxpro en Español
Hola:
No soy muy experto en esto, pero yo también quiero entregar aplicaciones desarrolladas en VFP 9.0 y un sistema de SGBD, y con la que más he hecho pruebas es con MySql, pero también esta MariaDB, que por supuesto es 'lo mismo' y sobre todo es gratis.
Por lo que me dí a la tarea de buscar y encontré esto:


sobre todo este:

"Esto convierte a MariaDB en una alternativa a tener muy en cuenta frente a otros sistemas sql ligeros, como Sqlite, ya que a pesar de su comportamiento portable, MariaDB aceptará conexiones remotas de otros ordenadores de la red de forma tan rápida y fiable como si estuviera realmente instalada en el equipo. Además, este sistema nos permitirá desarrollar programas portables que posteriormente podremos “elevar” a programas cliente-servidor sin necesidad de hacer absolutamente nada. Otra opción muy interesante de este plantemiento portable de MariaDB es la posibilidad que nos ofrece de crear “versiones demo” de programas basados en arquitectura Mysql sin necesidad de tener que instalar previamente un servidor. Así, podemos “colgar” nuestra aplicación en Internet para el cliente se descargue la demo, y si decide que le interesa, proceder entonces (y solo entonces) a instalar el servidor en sus ordenadores, etc, etc…"

Espero que esto colabore en el tema.

Saludos.

William


El domingo, 27 de agosto de 2017, 23:44:15 (UTC-6), ZeRoberto escribió:
Tengo un detalle con aplicaciones publicadas en la web, resulta que en algunos casos, cuando un cliente quiere descargar la demo para probarlo, instalar el MySQL es un problema ya que en algunos casos da errores durante el proceso de instalación, así que estoy pensado migrar mi base de datos a SQLite pero mi preocupación son los procedimientos almacenados, no se si estos funcionaran bien o si es que el SQLite acepte algunos procesos, otro detalle serian los trigger ya que muchas de mis tablas actualizan otras al hacer una inserción o eliminación.

Tambien no se si el SQLite hay que instalar algún tipo de servidor como el MySQL o solo basta con los drivers ODBC.

He visto una aplicación hecho en Power builder que solo carga un pequeño programa que hace las veces del servidor, no se si el SQLite trabajara asi.

Espero respuestas

Gracias de antemano

Reply all
Reply to author
Forward
0 new messages