KDD: Descubrimiento de conocimiento en bases de datos

Apuntes sobre KDD o Knowledge discovery in databases Ya estos son los últimos por esta semana. Ahora dejo algunos apuntes de KDD o descubrimiento de conocimiento (e información) en las bases de datos. Esto tiene que ver con los sistemas de información y las tecnologías de la información. ...

octubre 1, 2018 · 1 min · 194 palabras · Parzibyte

Replicación bidireccional de base de datos en MySQL sobre Windows y Linux

Introducción Vamos a ver hoy cómo replicar una base de datos en MySQL entre dos servidores. Esto es llamado replicación en MySQL. Veremos cómo sincronizar dos bases de datos de forma bidireccional, es decir, que ambos servidores sean esclavos y maestros al mismo tiempo. En este ejemplo se hace una replicación bidireccional de una base de datos, es decir, ambos son maestros y esclavos. Este tutorial está hecho en Windows con XAMPP y Ubuntu Server 18.04 pero funcionará perfectamente para cualquier otro sistema operativo en donde podamos instalar el motor de MySQL; ya que lo único que cambia es la ubicación del archivo de configuración llamado my.cnf o my.ini, y puedes ver en dónde se encuentra en el apartado de requisitos. Podemos, por ejemplo, sincronizar MySQL entre dos servidores Linux. O entre dos servidores Windows, o uno Windows y otro Linux. ...

septiembre 27, 2018 · 11 min · 2209 palabras · Parzibyte

Diferencia entre char y varchar en mysql

Introducción Entre los tipos de datos que soporta el motor de base de datos MySQL existen 2 que nos permiten guardar texto. Uno de ellos es el tipo de dato CHAR y el otro es VARCHAR. Veamos una comparación para mostrar la diferencia entre CHAR y VARCHAR en MySQL. Diferencia entre CHAR y VARCHAR de MySQL Justo mientras escribía “varchar” vino a mi mente por qué se llama así, o eso creo. Y el var es por “variable”, lo que quiere decir algo como “variable char”. Pero vamos poco a poco. ...

septiembre 25, 2018 · 3 min · 525 palabras · Parzibyte

Primeros pasos con MySQL en la línea de comandos

Introducción Esto es una pequeña gran introducción a MySQL desde la línea de comandos. Esto es lo que aprenderemos: Crear y mostrar bases de datos Eliminar bases de datos Crear tablas Eliminar tablas Insertar datos Eliminar datos Vaciar tablas Actualizar datos Filtrar datos Por hoy no nos vamos a preocupar por las relaciones o los motores de este sistema gestor de base de datos. Tampoco nos meteremos con los respaldos. Nota: este tutorial supone que tenemos a mysql en la variable PATH del sistema. Si no, aquí hay un post sobre ello. Dependiendo de cómo hayamos instalado MySQL la ruta puede variar, si lo hicimos con XAMPP entonces está en C:\xampp\mysql\bin. Si lo hicimos con workbench debe estar en archivos de programa y cambiará dependiendo de la versión que hayamos instalado. Una vez que esté en la variable PATH continuemos. ...

septiembre 19, 2018 · 6 min · 1273 palabras · Parzibyte

Python 3 y MySQL: CRUD y ejemplos de conexión

Introducción Recientemente vimos cómo trabajar con Python3 y SQLite3. Hoy veremos cómo combinar Python3 y MySQL para insertar, editar, eliminar y mostrar registros en esta base de datos tan popular. Así que veamos este tutorial fácil con ejemplos y demostración. Para conectar MySQL y Python 3 vamos a utilizar el paquete llamado PyMySQL. Nota: también he escrito tutoriales para conectar Python con SQL Server y con PostgreSQL. ...

septiembre 18, 2018 · 7 min · 1359 palabras · Parzibyte

SQLite3 y PDO con PHP: crud y ejemplos

Introducción Hace algunas semanas o meses escribí una pequeña introducción a Python con SQLite. Ahora es el turno de PHP, un poderoso lenguaje muy popular soportado por casi todos los servidores del mundo. Veamos un ejemplo de PHP, SQLite3 y PDO. SQLite3 viene como anillo al dedo si nuestra app no será consumida al mismo tiempo (en el mismo instante de tiempo), ya que, recordemos, no es una base de datos multihilo. Nota: recuerda habilitar la extensión sqlite Por cierto, ¿quieres un tutorial para MySQL? también puedes ver la conexión de PHP con otras bases de datos. ...

septiembre 17, 2018 · 12 min · 2433 palabras · Parzibyte

LIKE en MongoDB: consulta equivalente de SQL

Introducción En SQL, nosotros podemos utilizar el operador LIKE para buscar coincidencias en donde la celda tenga una porción de una cadena. En este post voy a explicar cómo hacer un like en MongoDB, es decir, el equivalente a la cláusula LIKE de SQL pero aplicada a MongoDB. ...

junio 30, 2018 · 1 min · 185 palabras · Parzibyte

Listar las tablas en SQLite 3 a través de consulta

Introducción Habrá ocasiones en las que necesitemos listar las tablas en SQLite a través de una consulta, no de su shell interactiva. En este post veremos cómo listar las tablas de una base de datos SQLite. Algo similar al comando de MySQL para listar tablas: SHOW TABLES; Pero en este caso lo haremos en una consulta y en SQLite3 para poder consumirlo desde cualquier lenguaje de programación compatible. Listar tablas de base de datos SQLite En este caso lo probé con Python, pero la consulta funciona igual para cualquier lenguaje. Básicamente tenemos que ejecutar esta consulta: ...

mayo 10, 2018 · 1 min · 157 palabras · Parzibyte

Pequeño, muy pequeño sistema de ventas con PHP y MySQL

Introducción Hace algunos días hice un ejercicio de un sistema de ventas en PHP. Está escrito en puro PHP, nada de Javascript. Eso sí, para los estilos utilicé una variante de Bootstrap. Los archivos no tienen una estructura, pero como lo dije, es un ejemplo. También escribo esto porque igual y le sirve a alguien más o me sirve a mí mismo para algunas referencias. Para la persistencia de datos utiliza MySQL. Guarda productos y ventas. No maneja permisos de usuarios. Almacenamos el carrito de compras en la sesión, y bueno, mejor lo explico por partes. ...

marzo 13, 2018 · 14 min · 2840 palabras · Parzibyte

Más ejercicios resueltos de MySQL: Combinando funciones

Introducción Esta es la tercera parte de unos posts que vengo escribiendo sobre ejercicios propuestos de MySQL. Ahora veremos cómo combinar algunas funciones que vimos en los otros tutoriales. Son pocos, pero al principio son difíciles. Ejercicios con solución Tabla Recordemos que vamos a estar utilizando esta tabla para todos los ejercicios: /* Si no tienes una base de datos, copia las siguientes dos líneas que no están comentadas */ CREATE DATABASE IF NOT EXISTS pruebas; USE pruebas; /* Si ya tienes una base de datos, sólo copia lo siguiente */ CREATE TABLE tblUsuarios ( idx INT PRIMARY KEY AUTO_INCREMENT, usuario VARCHAR(20), nombre VARCHAR(20), sexo VARCHAR(1), nivel TINYINT, email VARCHAR(50), telefono VARCHAR(20), marca VARCHAR(20), compañia VARCHAR(20), saldo FLOAT, activo BOOLEAN ); INSERT INTO tblUsuarios VALUES ('1','BRE2271','BRENDA','M','2','brenda@live.com','655-330-5736','SAMSUNG','IUSACELL','100','1'), ('2','OSC4677','OSCAR','H','3','oscar@gmail.com','655-143-4181','LG','TELCEL','0','1'), ('3','JOS7086','JOSE RAÚL','H','3','francisco@gmail.com','655-143-3922','NOKIA','MOVISTAR','150','1'), ('4','LUI6115','LUIS FRANCISCO','H','0','enrique@outlook.com','655-137-1279','SAMSUNG','TELCEL','50','1'), ('5','LUI7072','LUIS','H','1','luis@hotmail.com','655-100-8260','NOKIA','IUSACELL','50','0'), ('6','DAN2832','DANIEL ALDAIR','H','0','daniel@outlook.com','655-145-2586','SONY','UNEFON','100','1'), ('7','JAQ5351','JAQUELINE','M','0','jaqueline@outlook.com','655-330-5514','BLACKBERRY','AXEL','0','1'), ('8','ROM6520','ROMAN','H','2','roman@gmail.com','655-330-3263','LG','IUSACELL','50','1'), ('9','BLA9739','BLAS','H','0','blas@hotmail.com','655-330-3871','LG','UNEFON','100','1'), ('10','JES4752','JESSICA','M','1','jessica@hotmail.com','655-143-6861','SAMSUNG','TELCEL','500','1'), ('11','DIA6570','DIANA LAURA','M','1','diana@live.com','655-143-3952','SONY','UNEFON','100','0'), ('12','RIC8283','RICARDO','H','2','ricardo@hotmail.com','655-145-6049','MOTOROLA','IUSACELL','150','1'), ('13','VAL6882','VALENTINA','M','0','valentina@live.com','655-137-4253','BLACKBERRY','AT&T','50','0'), ('14','BRE8106','BRENDA','M','3','brenda2@gmail.com','655-100-1351','MOTOROLA','NEXTEL','150','1'), ('15','LUC4982','LUCIA','M','3','lucia@gmail.com','655-145-4992','BLACKBERRY','IUSACELL','0','1'), ('16','JUA2337','JUAN JOSÉ','H','0','juan@outlook.com','655-100-6517','SAMSUNG','AXEL','0','0'), ('17','ELP2984','ELPIDIO','H','1','elpidio@outlook.com','655-145-9938','MOTOROLA','MOVISTAR','500','1'), ('18','JES9640','JESSICA','M','3','jessica2@live.com','655-330-5143','SONY','IUSACELL','200','1'), ('19','LET4015','LETICIA','M','2','leticia@yahoo.com','655-143-4019','BLACKBERRY','UNEFON','100','1'), ('20','LUI1076','LUIS','H','3','luis2@live.com','655-100-5085','SONY','UNEFON','150','1'), ('21','HUG5441','HUGO','H','2','hugo@live.com','655-137-3935','MOTOROLA','AT&T','500','1'); Nota: no es la misma tabla que antes, ya que a ésta la hemos modificado de tal manera que a algunos usuarios se les asignó un segundo nombre, mismo que será de utilidad para los ejercicios. ...

febrero 24, 2018 · 5 min · 937 palabras · Parzibyte