Generar diagrama de base de datos con relaciones

En este post te mostraré un software gratuito que permite crear el diagrama de las tablas y sus relaciones a partir de una base de datos. No sé bien si se puede considerar así, pero esto permite generar el diagrama Entidad relación de manera automática.

Además de eso, esta herramienta permite exportar el diagrama a PDF, PNG, JPG y otros formatos. Entre las bases de datos que soporta, tenemos a:

  • DB2 LUW
  • DB2 z/OS
  • Derby
  • Exasol
  • H2
  • MariaDB
  • Mimer SQL
  • MySQL
  • NuoDB
  • Oracle
  • PostgreSQL
  • Redshift
  • SQLite
  • SQL Server
  • Sybase
  • Vertica

Yo he probado con SQLite y funciona de maravilla. Lo que vamos a usar se llama DbVisualizer.

(más…)

API REST con Spring Boot y MySQL

En este post te mostraré cómo crear una API REST usando el lenguaje de programación Java, el framework Spring Boot y la base de datos MySQL. Va a ser un proyecto simple pero a partir del mismo vas a poder crear más endpoints o rutas para consumir distintos modelos.

API REST en Spring Boot con MySQL

Lo que tendremos al final será un proyecto sencillo que expone una API REST con los métodos HTTP GET, POST, PUT y DELETE, interactuando con la base de datos en MySQL y además soportando CORS.

Por cierto, para el intercambio y consumo de datos vamos a usar JSON.

(más…)

Sistema gestor de enlaces con PHP – Open source y gratuito

Hace algún tiempo publiqué un software gestor de enlaces. Algo útil para gestionar enlaces de descarga, pues el software se encarga de acortar los links de manera automática, dando la posibilidad de tener usuarios premium que vean los enlaces originales.

Ahora este sistema de acortadores con PHP pasa a ser open source, y además, gratuito.

Haciendo software de acortadores open source

Si bien este software no es un remplazo total, puede servir como alternativa a gratuita a:

  • IVPaste
  • PlayPaste
  • Anonimizador de enlaces
  • Paste
  • Binbox

Además, soporta acortar enlaces de:

  • adf.ly
  • ouo.io
  • shink.me
  • shorte.st
  • shrinkme.io

Está escrito con PHP, usa MySQL para los datos y Bootstrap para el diseño. Es totalmente responsivo, listo para usarse y puede integrarse en cualquier plataforma, pues al final se genera un enlace del software que contiene la “subida” o “el paste”.

A lo largo del post te explicaré un poco sobre este software. Recuerda que los detalles y la demostración ya están en mi post anterior; acá te explicaré la parte técnica.

(más…)

Paginación con PHP y MySQL

En este post te mostraré de manera muy simple y sencilla cómo hacer una paginación de datos de MySQL usando PHP. Esto quiere decir que muestras los datos de la tabla por página, mostrando ciertos elementos por página.

Además de paginar los datos por tabla, también te enseñaré cómo crear enlaces que lleven a determinado número de página, cómo saber cuántas páginas puedes tener, etcétera.

Verás que la explicación es muy sencilla y después de esto podrás adaptar el código a tu software o tomar el ejemplo como está.

Nota: para este tutorial asumo que ya tienes las nociones básicas de PHP con MySQL, pero si no, no te preocupes, te invito a ver cómo conectar PHP con MySQL usando PDO y también te invito a ver un sistema de ventas en PHP para reafirmar tus conocimientos.

(más…)

Pequeño e-commerce en Angular, Node y MySQL (tienda online)

Hoy vengo a presentar un software de comercio electrónico, tienda online o e-commerce escrito en Angular, con los estilos de Angular Material, y con una API escrita con JavaScript del lado del servidor usando Node con Express. Para la base de datos se ha usado MySQL.

El software es open source; puede ser descargado y modificado por cualquier persona. Entre sus características encontramos:

  • Gestión de productos
  • Fotos de productos (guardadas en el disco duro)
  • Carrito de compras por cada usuario
  • Registro de venta con dirección de envío
  • Vista de tienda
  • Detalle de producto

Quiero aclarar que no es un software listo para producción, y más bien es un proyecto escolar que puede servir ya sea como base para un proyecto completo de un e-commerce o para otro proyecto escolar.

Veamos ahora cómo es que está programado, en dónde se puede descargar. etcétera.

(más…)

PHP: tomar foto con cámara y guardar en MySQL

En este post te mostraré cómo tomar una foto con la cámara web usando JavaScript; para más tarde enviarla a PHP y guardarla en una base de datos.

Recuerda que ya anteriormente vimos cómo hacer lo mismo pero guardando la foto en el disco duro, esto no es más que una modificación a lo que aparece en ese post.

Recomiendo encarecidamente que leas el post que menciono, pues aquí solo cambia la parte del guardado de la foto.

(más…)

Sistema de ventas con Laravel, Bootstrap y MySQL – Open source

Hoy voy a presentar un sistema que acabo de hacer con Laravel. Se trata de un sistema de ventas, punto de venta, PDV o como le llames, que sirve para llevar el seguimiento de los productos que se venden, el registro de ventas, etcétera.

Es un sistema totalmente gratuito y además open source; lo que quiere decir que puedes usarlo sin costo, y modificarlo a tus necesidades o personalizarlo. Entre sus opciones encontramos:

  • Utiliza Laravel en su última versión (a la fecha de escribir esto)
  • Bootstrap es usado para los estilos
  • Iconos de FontAwesome
  • Sistema totalmente responsivo, es decir, funciona en móviles, tabletas y computadoras
  • Control de inventario con precio de venta, precio de compra, utilidad, existencia, etcétera
  • Opción para realizar venta, agregando productos
  • Comprobación de existencia de inventario al vender
  • Resta de existencia al vender
  • Impresión de tickets de venta en impresora térmica
  • Reporte de ventas
  • Inicio de sesión y registro de usuarios
  • Gestión de usuarios (novedad)
  • Registro de clientes (novedad)
  • Ticket que incluye el nombre del cliente (novedad)

Ahora veamos cómo está hecho, en dónde obtenerlo, etcétera.

(más…)

Agregar columna llave foránea (fk) en MySQL

Resumen: en este post te muestro cómo modificar o alterar una tabla de MySQL para agregar una columna y hacer que esa columna sea una clave foránea.

Las relaciones en MySQL son importantes para tener datos en distintas tablas y no caer en la redundancia de campos. En ocasiones vamos a necesitar agregar una clave foránea a una tabla ya existente.

(más…)