sqlite

Insertar si no existe en SQL

SQL – Insertar fila si no existe usando WHERE

En este tutorial de SQL te mostraré cómo insertar datos a una tabla solo si el dato no existe, es decir, insertar un dato únicamente una vez usando una subconsulta y WHERE.

Este tutorial aplica para SQL en general, es decir, debería funcionar en cualquier motor, pero solo he podido probarlo en MySQL y SQLite 3.

Nota: no olvides que REPLACE INTO e INSERT IGNORE (o INSERT OR IGNORE) tienen similitudes con este método.

Continue reading…

Explorando base de datos Android desde el navegador

Depurar bases de datos SQLite en Android

Cuando se quieren depurar bases de datos en Android no la tenemos fácil, pues Android no ofrece una manera nativa y fácil de exportar o importar la base de datos de nuestra app.

En este post te mostraré una herramienta que te ayudará a visualizar y depurar las bases de datos SQLite en Android sin necesidad de ser root o instalar apps de terceros.

Únicamente debemos agregar la librería llamada Android-Debug-Database que personalmente me ha ayudado bastante al analizar o depurar bases de datos en Android.

Continue reading…

6 - Leer código de barras de paquete con cámara en App de entregas

App de entregas Android con sincronización web y GPS

En este post te mostraré una app de entrega de paquetes para Android que programé hace algún tiempo en Java, la cual sirve para dar seguimiento a entregas de paquetes o pedidos, sincronizada con un servidor para bajar y subir las entregas pendientes en cada terminal.

Se puede decir que es, a baja escala, algo similar a lo que hace DHL, Estafeta o esos servicios que entregan paquetes (no sé bien el nombre de ese campo).

La información se guarda en una base de datos SQLite local, y posteriormente se envía a un servidor para sincronizarse.

Para llevar un seguimiento de los paquetes se escanea el código de barras usando la cámara del teléfono inteligente, o escribiendo el código manualmente.

Continue reading…

Programación con Python y bases de datos

En este post te muestro cómo conectar Python 3 a varios motores de bases de datos, por ejemplo, MySQL / MariaDB, SQLite, SQL Server, PostgreSQL y SQLite 3.

Las bases de datos son un aspecto fundamental en los sistemas de información, pues permiten guardar y leer información de cualquier tipo.

Python provee la interfaz DB API 2.0 para conectar a todas las bases de datos usando la misma API o interfaz de programación de aplicaciones.

Python y bases de datos como MongoDB, MySQL, PostgreSQL, SQL Server, SQLite | ejemplos de código

Existen muchos motores de bases de datos que pueden ser consumidos con Python.

Continue reading…

PHP y bases de datos: ejemplos y tutoriales de conexión

En este artículo te muestro cómo conectar PHP con varias bases de datos. Aparte de los motores que usan SQL, PHP también puede consumir bases de datos No-SQL como MongoDB.

Conexión de PHP con Bases de datos

PHP es un lenguaje muy popular para la programación del lado del servidor. Funciona para muchísimas cosas, entre ellas, conectar con bases de datos a través del driver PDO por ejemplo.

Este post es un índice para ver cómo PHP puede conectarse con varios motores de bases de datos.

Continue reading…

Relaciones entre tablas de SQLite – Soporte para claves foráneas

Las relaciones entre tablas son fundamentales y realmente necesarias en el mundo de las bases de datos SQL.

El motor SQLite tiene un buen soporte para las relaciones entre las tablas, es decir, soporta las claves foráneas especificando relaciones de una tabla con otra.

Vamos a ver en este post cómo se usan las foreign keys en SQLite con algunos ejemplos simples.

Continue reading…

Diseño de actividad principal de Agenda en Android

Android y SQLite: agenda | Ejemplo de app con RecyclerView

Vamos a practicar un poco más con SQLite y Android con otro ejercicio práctico: la creación de una agenda.

Se pretende realizar una aplicación de una agenda en donde se escriba un identificador, el número de teléfono y el nombre de una persona.

Viéndolo desde el punto de vista de diseño de bases de datos o experiencia de usuario el ejercicio no estará muy bien; pero servirá mucho para practicar porque veremos cómo:

  1. Insertar un registro en SQLite
  2. Obtener un registro por ID
  3. Comprobar si un registro ya existe
  4. Listar los registros existentes

Continue reading…

6 - Copiar base de datos de dispositivo a PC con adb pull

Extraer base de datos de SQLite en Android sin root

Hoy vamos a ver cómo extraer una base de datos de SQLite de una aplicación de Android para copiarla a nuestra computadora y poder analizarla haciendo consultas; evitando pasar por la API de Java.

No vamos a necesitar root, simplemente tener el ejecutable de adb que se instala cuando comenzamos a programar en Android.

Por favor mira este tutorial en donde se ve cómo agregar adb.exe a la variable PATH de Windows.

Continue reading…

Actividad para insertar nueva mascota

Tutorial de SQLite con Android: CRUD (create, read, update, delete)

Para guardar datos en una base de datos usando Android tenemos que recurrir al maravilloso gestor SQLite3. Pues bien, hoy veremos cómo trabajar con SQLite desde Android usando Java.

Lo que veremos será un CRUD o ABC de Android con SQLite en donde veremos un insert, update, delete y select de SQL con Android.

Al final tendremos una app móvil simple que permitirá interactuar con SQLite para realizar las operaciones básicas que se ve así:

CRUD de SQLite con Android - Mascotas

CRUD de SQLite con Android – Mascotas

Todo esto usando SQLite y una clase que extiende de SQLiteOpenHelper.

Continue reading…

Modificar gemfile para instalar gema de SQLite3 de otra manera

Solución a Cannot load such file — sqlite3/sqlite3_native (LoadError) en Ruby on Rails

Si al intentar ejecutar una aplicación de Ruby on rails en Windows aparece el siguiente error:

Cannot load such file — sqlite3/sqlite3_native (LoadError)

Hoy traigo una solución que funciona. No sé por qué aparece este error la mayoría de veces sobre Windows, ¿así quieren fomentar el uso de rails? por eso tanta gente prefiere otras cosas, en fin, veremos cómo arreglar este problema.

Continue reading…