Warning: Constant WP_CACHE already defined in /home/frfklynt/public_html/emmyseco/wp-config.php on line 93

Warning: Cannot modify header information - headers already sent by (output started at /home/frfklynt/public_html/emmyseco/wp-config.php:93) in /home/frfklynt/public_html/emmyseco/wp-includes/feed-rss2.php on line 8
Base de datos – Emmy Seco https://emmyseco.com Contenido para todos! Sat, 24 Jul 2021 22:40:48 +0000 en-US hourly 1 https://wordpress.org/?v=7.1.1 Crear una base de datos con MySQL https://emmyseco.com/2021/04/crear-una-base-de-datos-con-mysql/?utm_source=rss&utm_medium=rss&utm_campaign=crear-una-base-de-datos-con-mysql https://emmyseco.com/2021/04/crear-una-base-de-datos-con-mysql/#respond Tue, 27 Apr 2021 22:53:01 +0000 https://emmyseco.com/?p=120 Tabla de contenido:

En cualquier proyecto de desarrollo se requiere un centro de dados, una base de datos en el cual guarde toda la información del software, es por ello que se debe aprender de como crear una base de datos, independientemente del tipo de desarrollador que quieres ser (Frontend, Backend, FullStack, DevOps), sin embargo, para aquellos que optan por un puesto de TI tienen que tener un conocimiento básicos para solventar cualquier inconveniencia que se pueda presentar en la vida cotidiana.

Sin más empecemos a explicar las primeras líneas de códigos para crear una base de datos.

Antes que nada para este articulo se utiliza la herramienta de HeidiSQL un gestor de base de datos y trabajaremos con el servidor MySQL (MariaDB).

Link del gestor de base de datos: HeidiSQL – MariaDB, MySQL, MSSQL, PostgreSQL and SQLite made easy

Crear la base de datos

Para nuestra practica haremos una base de datos con el tema de videojuegos, en la crearemos un registros de los juegos de una tienda.

Las siguientes líneas de códigos creará nuestra base de datos, la crearemos con el nombre “videojuegos” donde vamos a crear una tabla y registros referente al tema.

CREATE DATABASE IF NOT EXISTS `videojuegos`;
USE `videojuegos`;

Una vez que creamos la base de datos le indicamos que vamos usarla con “USE

Crear una tabla

El próximo paso será crear una tabla que represente los juegos de la tienda, en el cual llevara la siguiente estructura

idnombredescripciongenero
EnteroCadena de textoCadena de textoCadena de texto

Donde “id” es la llave primaria auto incrementable, eso quiere decir, al momento de agregar nuevos registro a la tabla el campo se sumara su valor automáticamente.

Para los campos “nombres, descripcion y genero” serán cadenas de texto con sus diferentes longitudes. En el caso del campo “nombre” no se le permitirá que ingresen un valor nulo (NULL), es decir, es obligatorio insertar un valor valido, el resto no serán obligatorios definir un valor.

La línea de código es el siguiente:

CREATE TABLE `juegos` (
	`id` INT(11) NOT NULL AUTO_INCREMENT,
	`nombre` VARCHAR(150) NOT NULL,
	`descripcion` MEDIUMTEXT NULL,
	`genero` VARCHAR(50) NULL DEFAULT NULL,
	PRIMARY KEY (`id`)
)

En nuestro gestor se muestra de la siguiente manera al crearla:

Crear registro a la tabla

Ya una vez listo la base de datos de videojuegos y la tabla de juegos, es hora de insertar registros con los valores necesarios. Para ello vamos a realizar tres (3) registros en la tabla.

El primero será con estos valores:

idnombredescripciongenero
1Prince Of Persiaes una serie de videojuegos de plataformas iniciada en 1989. Su éxito se debe a la notable fluidez de animación lograda en el protagonista, no vista hasta entonces.PC

El segundo los valores serán los siguientes:

idnombredescripciongenero
2Need for Speed: UndergroundNeed for Speed: Underground es un videojuego de carreras de automóviles desarrollado y lanzado por Electronic Arts en el 2003.PC

El tercero es:

idnombredescripciongenero
3DarkOrbitDarkOrbit es un juego multijugador desarrollado por BIGPOINT.MMO

La líneas de códigos son las siguientes:

INSERT INTO `juegos` (`id`, `nombre`, `descripcion`, `genero`) VALUES (1, 'Prince Of Persia', 'es una serie de videojuegos de plataformas iniciada en 1989. Su éxito se debe a la notable fluidez de animación lograda en el protagonista, no vista hasta entonces.', 'PC');

Es importante resaltar que el campo “id” no es obligatorio definirla, si bien no lo indicamos en la línea de código, MySQL automáticamente insertara el valor indicado ya que lo definimos como auto incrementable.

INSERT INTO `juegos` (`nombre`, `descripcion`, `genero`) VALUES ('Need for Speed: Underground', 'Need for Speed: Underground es un videojuego de carreras de automóviles desarrollado y lanzado por Electronic Arts en el 2003.', 'PC');

INSERT INTO `juegos` (`nombre`, `descripcion`, `genero`) VALUES ('DarkOrbit', 'DarkOrbit es un juego multijugador desarrollado por BIGPOINT.', 'MMO');

Consultar a la tabla

Listo!, tenemos nuestros registros almacenados en nuestra tabla, para poder comprobar nuestra operación vamos hacer una simple consulta.

SELECT * FROM juegos;

El resultado sería:

Vamos a realizar diferentes consultas a la tabla para filtrar nuestros resultados.

SELECT * FROM juegos WHERE genero = 'PC';

Como nos muestra la imagen anterior, la consulta realizo un llamado a la tabla y filtró la información, donde muestra todos los registros de genero “PC”.

Ahora vamos a consultar todos los registros ordenados por el nombre del juego:

SELECT * FROM juegos ORDER BY nombre ASC;

Estamos listo, ya creamos nuestra base de datos con una tabla y sus registros. Muchas gracias por leer y espero que este pequeño tutorial te sirva para seguir creciendo.

]]>
https://emmyseco.com/2021/04/crear-una-base-de-datos-con-mysql/feed/ 0
Conceptos básicos del SQL https://emmyseco.com/2021/02/conceptos-basicos-del-sql/?utm_source=rss&utm_medium=rss&utm_campaign=conceptos-basicos-del-sql https://emmyseco.com/2021/02/conceptos-basicos-del-sql/#respond Mon, 01 Feb 2021 22:05:58 +0000 https://emmyseco.com/?p=60

Algunas vez ya sea en tus inicios como desarrollador de software o bien sea en tus estudios universitarios, entre otros; te has encontrado con las siglas en Inglés SQL y no tienes muy claro de que trata o te haces la pregunta, ¿para que sirve?. Muy bien no te preocupes en breve te lo explicamos de la manera mas simple y directa, para que puedas desenvolverte en el resto del camino de la programación y no morir en el intento.

Tabla de contenido:

¿Qué es SQL?

El SQL significa lenguaje de consultas estructurado (en Inglés: Structure Query Language), es un lenguaje que se utiliza mayormente en la manipulación de datos y gestión de las base de datos relacional. El lenguaje de dominio especifico paso a ser estándar desde 1986 por el Instituto Nacional Estadounidense de Estándares (ANSI) y y de la Organización Internacional de Normalización (ISO) en 1987.

Uso y diferencias entre los principales sistemas de base de datos

El lenguaje de consultas tienen muchas aplicaciones en el desarrollo de software, ya sea desde aplicaciones web hasta en los aplicativos móviles, ya que en la gran mayoría de proyectos de desarrollo de sistemas informático se requiere guardar y obtener toda la información en una base de datos, con la finalidad de que los sistemas puedan escalar de acuerdo a la necesidad del proyecto. Pero, ¿Dónde se utiliza el lenguaje de consulta SQL?.

Existen diferentes sistema de base de datos, de lo más conocidos son MariaDB, MySQL, PostgreSQL, Microsoft SQL Server y Oracle; pero existen una gran variedad de sistemas de base de datos, algunos de ellos como SQL lite.

Es importante resaltar que para los diferentes tipos de sistema de base de datos tienen algunos cambios entre sentencias y la forma de definir comandos para gestionar la base de datos. Entre ellas es el caso de MySQL, Microsoft SQL Server y Oracle, que pueden tener algunas similitudes en su lenguaje pero tienen características que no son compatibles con los demás.

SQL Server / MS Access:
SELECT TOP 100 nombre, apellido, email, clave 
FROM Usuarios
WHERE nombre = 'Carlos';
MySQL:
SELECT nombre, apellido, emial, clave
FROM Usuarios
WHERE nombre = 'Carlos'
LIMIT 100;
Oracle:
SELECT nombre, apellido, emial, clave
FROM Usuarios
WHERE NOWROWS <= 100 AND nombre = 'Carlos';

Sentencias principales

Para poder aprender rápidamente el lenguaje de consultas SQL, vamos a conocer las principales sentencias para poder hacer nuestras primeras consultas en una base de datos ya sea MySQL, PostgreSQL, entre otros.

Antes de empezar repasaremos rápidamente algunos términos técnicos importantes de saber:

Base de dato: Conjunto de datos, donde se guarda toda la información de nuestro sistema
Tablas: Tipo de modelado de datos donde se guardan los datos sobre un tema en concreto.
Registros: Las tablas almacenan registros en los cuales contienen diferentes campos de información
Campos: Es la composición de un registro y puede ser de diferentes tipos de datos, desde números naturales hasta números binarios.
Índices: Es una estructura de datos que mejora la velocidad de las operaciones, por medio de un identificador único de cada fila de una tabla.
Llave primaria: Es un campo especial o combinacion de varios campos de una tabla de base de datos relacional, definida para identificar en forma única cada registro en dicha tabla.

Muy bien ahora sí, empecemos con las sintaxis.

Lo primero que debemos conocer es crear una base de datos y al menos una tabla con diferentes registros, es decir, vamos a crear una base de datos, luego una tabla y finalmente insertar registros para poder hacer consultas.

Para crear una base de datos la sintaxis es la siguiente:

CREATE DATABASE MiPrimeraDB;

Ahora que hemos creado nuestra base de datos, crearemos nuestra primera tabla, que para este ejemplo, crearemos una tabla de usuarios:

CREATE TABLE Usuarios (
    UsuarioID int,
    Nombre varchar(50),
    Apellido varchar(100),
    Email varchar(100),
    Clave varchar(255)
);

Muy bien en esta sentencia de código observamos que diferentes elementos que lo explicare brevemente a continuación:

CREATE TABLE [NUESTRO NOMBRE DE LA TABLA] (
   [NOMBRE CAMPO] [TIPO DE DATO],
   [NOMBRE CAMPO] [TIPO DE DATO],
   ...
);

CREATE TABLE [NOMBRE DE LA TABLA]: aquí estamos definiendo el nombre que va ocupar nuestra tabla.

[NOMBRE CAMPO] : En esta sección vamos a definir el nombre que va poseer el campo, puede obtener cualquier nombre o alias pero no que tenga caracteres especiales (!?”#, etc).

[TIPO DE DATO]: Aquí se define el tipo de datos que va a contener dicho campo, puede obtener enteros, cadena de textos, formato de fechas, entre otros. En algunos datos se requiere establecer una longitud máxima, por ejemplo:

Nombre varchar(50)

Los tipos de datos mas comunes son:

varchar: Cadena de texto
char: caracteres
int: números enteros
decimal: números decimales
datetime: fechas en el formato yyy-mm-dd hh:mm:ss

Para más información de los tipos de datos, lo pueden checar aquí

Finalmente vamos a crear un par de registro y consultaremos la información de la tabla con las siguientes líneas de código:

INSERT INTO Usuarios (`UsuarioID`, `Nombre`, `Apellido`, `Email`, `Clave`) VALUES (1,'Juan','Mendez','juan@correo.com','123456');

INSERT INTO Usuarios (`UsuarioID`, `Nombre`, `Apellido`, `Email`, `Clave`) VALUES (2,'Carlos','Hernandez','carlos@correo.com','654321');

Con esto lograremos registrar, dada la redundancia, dos registros en nuestra tabla de usuarios. Ahora vamos a hacer una consulta para ver los registros insertado anteriormente.

SELECT * FROM Usuarios;

Esto nos arrojara todos los registros de la tabla pero si queremos obtener registros seleccionados, es decir, solo aquellos registros que se llamen Juan, se hace lo siguiente:

SELECT * FROM Usuarios WHERE Nombre = 'Juan';

Diferencia entre SQL y NoSQL

Es posible que durante el aprendizaje de las base de datos con SQL surge la denominación NoSQL, ya que en la búsqueda de soluciones de un determinado problema, durante el desarrollo en algún momento se halla propuesto un sistema de base de datos no relacional (NoSQL). Primero veamos que significa base de dato relacional:

El lenguaje SQL como lo hemos mencionado anteriormente, funciona en los sistema de base de datos relacional, esto quiere decir que una base de datos debe cumplir con el modelo relacional. Las base de datos relacional almacena y proporciona acceso a puntos de datos relacionados entre sí, es decir, la información almacenada en tablas tienden a estar relacionadas en otras tablas compartiendo vistas e índices y de acuerdo a la lógica establecida se puede llevar un control de restricciones y actualizaciones entre los datos de la base de datos.

Pero para no extendernos demasiado ya que es un tema más denso solo basta entender que las base de datos relacionales sirven para guardar similitud con otras secciones de la base de datos, mediante índices que sirven como puente para llegar a una información relacionada entre tablas.

Para el caso de NoSQL ocurre todo lo contrario, las bases de dato no relacionales no tiene algún semejante entre los diferentes secciones o documentos (en NoSQL no existen las tablas, si no documentos) en la base de datos, esto es porque los datos no se le puede emplear índices.

Las bases de datos no relacionales son un sistema de almacenamiento de información que se caracteriza por no usar el lenguaje SQL para las consultas. Esto no significa que no puedan usar el lenguaje SQL, pero no lo hacen como herramienta de consulta, sino como apoyo.

Pero la gran pregunta es ¿Cuál de los dos me conviene?, eso dependerá de las necesidades del sistema y que lo cubriré en otra publicación referente a las base de datos en este sitio web.

Conclusiones

Sin duda el lenguaje SQL es esencial para poder realizar operaciones dentro de una base de datos ya sea relacional o no relacional siempre y cuando el sistema tenga la opción de poder usar el lenguaje de consulta. En la mayoría de los proyectos suelen utilizar base de datos relacionales, por lo cual el aprendizaje de SQL se hace vital para poder ser un desarrollador completo, sin embargo, existen carreras de especialización que solo se dedican en la administración de base de datos y por lo cual aprender este lenguaje de consulta es indispensable.

]]>
https://emmyseco.com/2021/02/conceptos-basicos-del-sql/feed/ 0