Bienvenida conceptos básicos y contexto histórico de las Bases de Datos

1

Bienvenida conceptos básicos y contexto histórico de las Bases de Datos

Introducción a las bases de datos relacionales

2

Historia de las bases de datos relacionales

3

Qué son entidades y atributos

4

Entidades de Platzi Blog

5

Relaciones

6

Múltiples muchos

7

Diagrama ER

8

Diagrama Físico: tipos de datos y constraints

9

Diagrama Físico: normalización

10

Formas normales en Bases de Datos relacionales

11

Diagrama Físico: normalizando Platziblog

RDBMS (MySQL) o cómo hacer lo anterior de manera práctica

12

Instalación local de un RDBMS (Windows)

13

¿Qué es RDB y RDBMS?

14

Instalación local de un RDBMS (Mac)

15

Instalación local de un RDBMS (Ubuntu)

16

Clientes gráficos

17

Servicios administrados

SQL hasta en la sopa

18

Historia de SQL

19

DDL create

20

CREATE VIEW y DDL ALTER

21

DDL drop

22

DML

23

¿Qué tan standard es SQL?

24

Creando Platziblog: tablas independientes

25

Creando Platziblog: tablas dependientes

26

Creando Platziblog: tablas transitivas

Consultas a una base de datos

27

¿Por qué las consultas son tan importantes?

28

Estructura básica de un Query

29

SELECT

30

Playground: SELECT en SQL

31

FROM y SQL JOINs

32

Utilizando la sentencia FROM

33

WHERE

34

Utilizando la sentencia WHERE nulo y no nulo

35

GROUP BY

36

ORDER BY y HAVING

37

El interminable agujero de conejo (Nested queries)

38

¿Cómo convertir una pregunta en un query SQL?

39

Preguntándole a la base de datos

40

Consultando PlatziBlog

Introducción a la bases de datos NO relacionales

41

¿Qué son y cuáles son los tipos de bases de datos no relacionales?

42

Servicios administrados y jerarquía de datos

Manejo de modelos de datos en bases de datos no relacionales

43

Top level collection con Firebase

44

Creando y borrando documentos en Firestore

45

Colecciones vs subcolecciones

46

Recreando Platziblog

47

Construyendo Platziblog en Firestore

48

Proyecto final: transformando tu proyecto en una db no relacional

Bases de datos en la vida real

49

Bases de datos en la vida real

50

Big Data

51

Data warehouse

52

Data mining

53

ETL

54

Business intelligence

55

Machine Learning

56

Data Science

57

¿Por qué aprender bases de datos hoy?

Bonus

58

Bases de datos relacionales vs no relacionales

59

Elegir una base de datos

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripción 🔥

Aprende todo un fin de semana sin pagar una suscripción 🔥

Regístrate

Comienza en:

1D
4H
57M
11S

DML

22/59
Recursos

DML trata del contenido de la base de datos. Son las siglas de Data Manipulation Language y sus comandos son:

  • Insert: Inserta o agrega nuevos registros a la tabla.
  • Update: Actualiza o modifica los datos que ya existen.
  • Delete: Esta sentencia es riesgosa porque puede borrar el contenido de una tabla.
  • Select: Trae información de la base de datos.

Aportes 392

Preguntas 110

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Como curiosidad imagine que si podía agregar varios datos a mi tabla y si se podía, tal vez sea algo obvio para muchos pero si recién estás empezando en esto créeme que te emociona hacer estas simples cosas.
adjunto imagen:


el profe viendo como hago un delete sin where

Donde se te olvide el WHERE en un update o delete tu estado de empleado será actualizado a cliente :v

Resumen de esta clase y las tres anteriores

DDL -> Data Definition Language
Ayuda a crear la estructura de una BD.

  • Create
    * Database
    * Table
    * View
  • Alter
  • Drop

DML -> Data Manipulation Language
Ayuda a la manipulacion del contenido

  • Insert
  • Update
  • Delete
  • Select

Y yo que eliminé las tablas por la clase pasada #VivaYo.

Por si alguien quiere copiar y pegarlo

INSERT INTO people (last_name, first_name, address, city) 
  VALUES ('Hernández', 'Laura', 'Calle 21', 'Monterrey');

La cara de todos los que eliminamos nuestra tabla en la clase anterior .-.

Para evitar borrar cualquier dato sin querer por ejemplo borrar todos los datos de una tabla es importante hacer uso de BEGIN TRAN NOMBRE_DE_LA_TRANSACCION

La sentencia que se utiliza para indicar el comienzo de una transacción es BEGIN TRAN. Si alguna de las operaciones de una transacción falla hay que deshacer la transacción en su totalidad para volver al estado inicial en el que estaba la base de datos antes de empezar. Esto se consigue con la sentencia ROLLBACK TRAN

Si todas las operaciones de una transacción se completan con éxito hay que marcar el fin de una transacción para que la base de datos vuelva a estar en un estado consistente con la sentencia COMMIT TRAN

En vez de ejecutar DELETE FROM CLIENTES que borra todos los registros de la Tabla CLIENTES puedes ejecutar BEGIN TRAN TRANCLIENTE DELETE FROM CLIENTES que hace lo mismo pero no asegura los cambios en la base de datos. Si al realizar una consulta de verificación y darte cuenta que eliminaste todos los datos de la tabla puedes deshacer la operación con ROLLBACK TRAN TRANCLIENTE o si quieres confirmar que el DELETE fue realizado correctamente usas COMMIT TRAN TRANCLIENTE para confimar los datos y asentar los cambios en la base de datos.

Cerrar el motor de base de datos (en mi caso SQL SERVER) elimina las transacciones en memoria que no se hayan confirmado (lo mismo que ROLLBACK TRAN).

Puedes hacer varias transacciones al tiempo, lo único que necesitas es definir nombres de transacciones diferentes.

Me parece bueno tener visualizado este diagrama (obtenido del enlace del profesor)

Yo se que borraste tu tabla xD. Dejare esto por aquí…

CREATE TABLE people (
	person_id int AUTO_INCREMENT,
    last_name varchar(225),
    first_name varchar(255),
    address varchar(255), 
    city varchar(255),
		PRIMARY KEY (person_id)
);
INSERT INTO people(last_name,first_name,address,city)
VALUES('Vázquez', 'Israel','Calle Famosa Num 1','México'),
('Hernández','Mónica','Reforma 222','México'),
('Alanis','Edgar','Central 1', 'Monterrey');
SELECT * FROM people;

Buen dia platzinautas, aquí dejo unos conceptos que pueden ayudar a reforzar el tema:
DML: Data Manipulation Language
Por su traducción lenguaje de manipulación de datos nos proporciona comandos para llevar acabo tareas de consulta o manipulación de datos
Comandos DML:
Select (Seleccionar): Este comando nos permite consultar los datos almacenados en una tabla de la base de datos. Select cuenta con los siguientes subcomandos:

  • ALL: Indica que queremos seleccionar todos los valores.
  • DISTINCT: Indica que queremos seleccionar sólo los valores distintos
  • FROM: Indica la tabla (o tablas) desde la que queremos recuperar los datos.
  • WHERE: Especifica una condición que debe cumplirse para que los datos sean devueltos por la consulta. Admite los operadores lógicos AND y OR.
  • GROUP BY: Especifica la agrupación que se da a los datos.
  • ORDER BY: Presenta el resultado ordenado por las columnas indicadas.
    Insert (Insertar): Este comando agrega uno o más registros a una (y sólo una) tabla en una base de datos relacional.
    Update (Actualizar): Este comando es utilizado para modificar los valores de un conjunto de registros existentes en una tabla.
    Delete (Borrar): Este comando borra uno o más registros existentes en una tabla.
    Espero les ayude amigos, saludos. 😃

Las sentencias SQL se dividen en dos categorías; Lenguaje de definición de datos; data definition language (DDL) y Lenguaje de manipulación de datos ;data manipulation language (DML).

Lenguaje de definición de datos (DDL)
Las sentencias DDL se utilizan para crear y modificar la estructura de las tablas así como otros objetos de la base de datos.

CREATE - para crear objetos en la base de datos.
ALTER - modifica la estructura de la base de datos.
DROP - borra objetos de la base de datos.
TRUNCATE - elimina todos los registros de la tabla, incluyendo todos los espacios asignados a los registros.
Lenguaje de manipulación de datos (DML)
Las sentencias de lenguaje de manipulación de datos (DML) son utilizadas para gestionar datos dentro de los schemas. Algunos ejemplos:

SELECT - para obtener datos de una base de datos.
INSERT - para insertar datos a una tabla.
UPDATE - para modificar datos existentes dentro de una tabla.
DELETE - elimina todos los registros de la tabla; no borra los espacios asignados a los registros.

Las palabras reservadas pueden escribirse tanto en mayuscula como en minuscula. Sin embargo, la convencion(y buena practica) es usarlas por completo en mayusculas.

Un truco que uso con los UPDATE es en vez de ejecutarlo directamente, cambio el UPDATE por SELECT y veo si los datos que me regresa son los que quiero actualizar.

Hace unos días me llamo la atención un comentario que hace referencia al termino de error de capa 8. Un día completo me generó esa inquietud de saber a que se refería, hoy que tuve tiempo, me entero que el error de capa 8 es un término utilizado para indicar que el error es causado por la ineptitud del usuario.

dddsf

Insert: 

	INSERT INTO 		`Nombre_de_la_Base_de_Datos`.`Nombre_de_la_tabla`
		(`Columna1`,`Columna3`,`ColumnaN`) VALUES ('ValorCol1','ValorCol3','ValorColN');
	
Update:
	UPDATE Nombre_de_la_tabla
	SET ColumnaAModificar1=Nuevo_valor, ColumnaAModificar2='Nuevo_valor'
	WHERE ColumnaGuia= 'ValorGuía'; // Fila en la que afectara
	
Delete:
	DELETE FROM Nombre_de_la_tabla
	WHERE ColumnaGuia = 'ValorGuía'; // Fila en la que afectara
	
Select:
	SELECT Columnas_a_mostrar FROM Nombre_de_la_tabla
	WHERE ColumnaGuia = 'ValorGuía';

Borre mi base, ahora tengo que volver hacerla XD

UPDATE: cambiar registro.
SET: parámetros a cambiar:
WHERE: especifica el registro a cambiar.
INSERT: agregar registro.
INTO: tabla a agregar los registros.
VALUES: valores a agregar.
DELETE: eliminar registro.
FROM: especifica la tabla.
WHERE: especifica el registro a eliminar.

Si ves esto DELETE FROM clients; en tu consola, huye lo más lejo posible 😃.

La instrucción WHERE es muy importante utilizar en nuestros DELETEs, UPDATEs.

DELETE FROM clients WHERE client_id = 1;

DML: DATA MANIPULATION LANGUAGE

  • Se utiliza prinicipalmente para la manipulacion de la base de datos.
  • Operaciones principales: INSERT, UPDATE, DELETE, SELECT.
  • Las operaciones arriba mencionadas se utilizan a lo largo de todo el desarrollo del proyecto.
  • INSERT
    • Agrega un nuevo registro o tupla a nuestra database.
    • Se utiliza de la siguiente manera:
      • INSERT INTO (nombreDeLaTabla) (listaDeNombresDeAtributos)
      • values (listaDeValoresDeAtributos);
  • UPDATE
    • Actualiza o modifica los datos que ya existen.
    • No inserta un dato si este no existe.
    • Se utiliza de la siguiente manera:
      • UPDATE people (para actualizar la tabla con ese nombre)
      • SET lastName = ‘Chavez’, city = ‘Merida’ (actualizar los datos como se especifico en el set)
      • WHERE personID = 1; (donde el ID sea igual a 1).
      • Sino se usa el WHERE, el cambio se realiza sobre toda la base de datos.
      • Mas ejemplos en el minuto 08:10.
  • DELETE
    • RIESGOSO!
    • Esta sentencia borra permanentemente uno o varios resgistros de una tabla. Si es mal utilizada (por ejemplo, sin utilizar WHERE, borra la tabla entera).
    • Se utiliza de la siguiente manera:
      • DELETE FROM people (borrar de la tabla de nombre “people”)
      • WHERE personID = 1 (donde el ID es 1)
      • (borra de la tabla la persona de ID 1).
  • SELECT
    • Nos trae informacion de la base de datos.
    • Se utiliza de la siguiente manera:
      • SELECT (campo o campos a traer de la base)
      • FROM (nombreDeLaTabla)
      • WHERE; (opcional, para restringir o filtrar los datos)

DDL=Define la estructura
DML = Manipula datos o información

Yo al ver que el profe inserta datos en la tabla que borre en la clase anterior.

Si queremos usar el WHERE con doble condicional, es decir que dado el caso de que tengamos valores repetidos y necesitemos dos o màs valores para poder identificar una columna(sin usar el primary key)
utilizamos el 'and’
EJEMPLO :
UPDATE people
SET last_name = 'Solanito’
WHERE first_name = ‘Israel’ and address = ‘Calle famosa’;

DML (Data Manipulation Language)

  • Insert: insertar datos en tablas
  • Update: actualizar datos
  • Delete: Borra datos de una tabla
  • Select: consultar datos de una tabla

Me siento como niño pequeño experimentando con las bases de datos, el lenguaje es tan sencillo y con tan pocas líneas ves resultados.

Cuando se esta trabajando en producción y necesites hacer un UPDATE o un DELETE de un gran numero de registros al mismo tiempo, es muy recomendable que crees una copia temporal de la tabla que vas a afectar. Escribes el Query que vas a ejecutar y lo aplicas a la tabla temporal, revisas que todo este correcto y de acuerdo a lo deseado y procedes a aplicar el Query a la tabla de producción.

De esta manera jamás tendrás un mini ataque cardíaco de esos 😃

para la ultima version de workbrench(2020) a la hora de practicar la funcion UPDATE, me salia mucho el error," 1175 You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column."
al intentar solucionar como dijo el profe y no solucionar nada, googlee el error y encontre que se puede desactivar de la siguiente manera:
SET SQL_SAFE_UPDATES = 0;
ejecuten este comando antes de hacer los UPDATES.
espero les sea de mucha ayuda

No te olvides de poner el where en el delete from ♪

Para correr el código y no usar “el rayito”, se puede seleccionar el code a ejecutar y en el teclado presionar Ctrl + Enter.

Les comparto algo que muy posiblemente ya saben 😃

Para desactivar la opción de actualizaciones seguras (lo que no permite ejecutar la segunda ni la tercera sentencia del UPDATE)
debes ejecutar la siguiente sentencia:

SET SQL_SAFE_UPDATES = 0;

Y si deseas volver a activarla, ejecuta:

SET SQL_SAFE_UPDATES = 1;

Estoy feliz, pude lograr seguir todos los ejemplos del profesor, bravo por los aportes de los compañeros que dejan aportes con soluciones.

No existe el ctrl+z en workbench?

El uso de las sentencias INSERT, UPDATE, DELETE y SELECT se le conoce dentro del desarrollo de software como el CRUD (Create: Crear, Read: Leer, Update: Actualizar, Delete: Borrar); el cual pueden consultar en el siguiente link: https://es.wikipedia.org/wiki/CRUD

Este curso esta buenisimo

no se olviden el where …

Un tip muy útil al trabajar en Mysql Workbench es que para ejecutar el comando solo de la línea en donde está el cursor pulsas CTRL + ENTER y para ejecutar todos los comandos escritos en el editor pulsas CRTL + SHIFT + ENTER. No necesitas seleccionar todos los comandos como hace el profesor, aunque supongo que por algo lo hace.

No sé si a todos les ayude pero, yo no guardé la clave de mysql root en mac os, por eso adjunto este pequeño tutorial de como cambiarla ver aquí

Data Model Language
Comandos usados:
- Insert?
○ Insert into people (last_name, first_name, adrres, city)?values (‘hernandez’, ‘Laura’, ‘Calle 21’, ‘Monterrey’);?
- Update
○ UPDATE people?SET last_name = ‘Chavez’, city = ‘Merida’?WHERE person_id = 1;?
- Delete
○ DELETE FROM people?WHERE person_id = 1;?
- Select
○ SELECT first_name, last_name?FROM people;

DML
En ingles es el acrónimo de Data Manipulation Language, y es un idioma que proporcionan los DBMS y permiten al usuario llevar tareas de consulta o modificación de datos. El lenguaje de manipulación de datos mas famoso hoy en dia es SQL, cuyos elementos son: SELECT, INSERT, DELETE y UPDATE.

Me gustan mucho las clases con este profesor, realmente sabe los que hace y lo mas importante, sabe transmitir sus conocimientos a los alumnos.

Com o se crea la nueva pestaña cuando ingresa los comandos.
Yo tengo My SQL 8 y me abre solo una pestaña

Si como yo, borraste tu base de datos, puedes volver a crearla con los siguientes comandos en Workbench:

Primero necesitamos crear el schema:

CREATE SCHEMA `platzi_test` DEFAULT CHARACTER SET utf8 ;

Después, la tabla:

CREATE TABLE `platzi_test`.`people` (
  `person_id` INT NOT NULL AUTO_INCREMENT,
  `last_name` VARCHAR(50) NULL,
  `first_name` VARCHAR(50) NULL,
  `adress` VARCHAR(50) NULL,
  `city` VARCHAR(50) NULL,
  PRIMARY KEY (`person_id`));

Recuerda seleccionar la opción “Set as default schema”
Y ahora si, puedes continuar con la clase 😉

DML trata del contenido de la base de datos. Son las siglas de Data Manipulation Language y sus comandos son:

Insert: Inserta o agrega nuevos registros a la tabla.
Update: Actualiza o modifica los datos que ya existen.
Delete: Esta sentencia es riesgosa porque puede borrar el contenido de una tabla.
Select: Trae información de la base de datos.

Comparto la practica de inserción de datos en el ejercicio practico que estoy realizando.

  • Los scripts de la clase:

Insert

INSERT INTO people (last_name,
first_name, address, city)
VALUES ('Hernández', 'Laura',
'Calle 21', 'Monterrey');

Update

	UPDATE people
  SET last_name = 'Chávez', city= 'Mérida'
  WHERE person_id = 1;

  UPDATE people
  SET first_name = 'Juan'
  WHERE city = 'Mérida';

  UPDATE people
  SET first_name = 'Juan';

Delete

DELETE FROM people
WHERE person_id = 1;

Select

SELECT fist_name, last_name
FROM people;

Por si usan la versión 8 de MySQL en Windows y les sale el error 1046:

UPDATE platziblog.people
SET last_name =‘Chavez’ , city = 'Merida’
WHERE id_persom = 1;

insert into books(title, author, publication_year)
VALUES ("The Death and Life of the great American School System", 
"Diane Ravitch", "2010"),
("Powerful Teaching", "Pooja K Agarwal", "2019"),
("Math Fact Fluency", "Gina Kling", "2019"),
("Research Methods in Education", "Louis Cohen", "2017"),
("Why don't students like school?", "Daniel T. Willingham", "2009");
INSERT INTO `platzi_test`.`people` (`person_id`, `last_name`, `first_name`, `address`, `city`) 
VALUES ('1', 'Vásquez', 'Israel', 'Calle Famosa Num 1', 'México'),
	       ('2', 'Hernández', 'Mónica', 'Reforma 222', 'México'),
	       ('3', 'Alanis', 'Edgar', 'Central 1', 'Monterrey');

INSERT INTO people (last_name, first_name, address, city) 
  VALUES ('Hernández', 'Laura', 'Calle 21', 'Monterrey');

En álgebra relacional conocemos como proyección lo siguiente SELECT first_name, last_name FROM people;

Se clasifican en dos grandes grupos:

lenguajes de consulta procedimentales
Lenguajes procedimentales. En este tipo de lenguaje el usuario da instrucciones al sistema para que realice una serie de procedimientos u operaciones en la base de datos para calcular un resultado final.

lenguajes de consulta no procedimentales
En los lenguajes no procedimentales el usuario describe la información deseada sin un procedimiento específico para obtener esa información

DML: trata del contenido de la base de datos. Son las siglas de Data Manipulation Language y sus comandos son:

  • Insert: Inserta o agrega nuevos registros a la tabla.
    INSERT INTO platziblog.people(last_name, first_name, address, city)
    VALUES (‘Hernandez’, ‘Laura’, ‘Calle 21’,‘Monterrey’);
    .
  • Update: Actualiza o modifica los datos que ya existen.
    UPDATE people
    SET last_name = ‘Chavèz’, CITY = 'Merida’
    WHERE person_id = 1;
    .
  • Delete: Esta sentencia es riesgosa porque puede borrar el contenido de una tabla.
    Delete FROM people
    WHERE person_id = 1;
    .
  • Select: Trae información de la base de datos.
    SELECT first_name, last_name
    FROM people;

A mi me funcionó indicando primero el nombre de la base de datos y luego el nombre de la tabla, separandolos solo con un punto (lo hice en windows)

INSERT INTO platziblog.people (last_name, first_name, address, city)
VALUES ('Vázquez', 'Israel', 'Calle Famosa Num 1', 'México'),
('Hernández', 'Mónica', 'Reforma 222', 'México'),
('Alanis', 'Edgar', 'Cental 1', 'Monterrey');

Si sale ese error del UPDATE ¿hay forma de ignorarlo? se me ocurre que pueden haber casos donde si necesitemos hacer algo así y por lo que veo en la explicación no dejo avanzar.

Si quieren borrar algun campo o en un rango pueden hacer

DELETE FROM people 
WHERE id < 0 AND id > 10 

Asi podrias borrar en rango o multiples registros, al menos esta fue una forma que descubri en stackoverflow

Yo crei que el lenguaje más fácil para aprender era python, pero aparentemente MYSQL es demasiado fácil

Pregunta de examen: ¿En qué fase de un proyecto se utiliza más fuertemente el lenguaje DML?

El profe nos hizo borrarla para despues volver a usarla… me toco hacer todo de nuevo!

yo en el minuto 11,volviéndome loco por no saber por que no se ejecuta el UPDATE, 😂😂, excelente clase profesor!

https://www.youtube.com/watch?v=JPKHHw6o6Iw
A qui esta el vídeo para desactivar el modo seguro
Error: 1175

Me gustó mucho esta clase, la verdad muy buena. Buen profesor!

Si quieres ejecutar el segundo Update del ejercicio sigue los siguientes pasos:

  1. Ve a la pestaña Edit y selecciona la opción Preferences
  2. Selecciona la opción SQL Editor y luego quitale el chulito a la opción que dice Safe Updates (…) y dale OK.
  3. Ve luego a la pestaña Query y da click en la opción Reconnect to Server
  4. Ejecuta nuevamente el Update con Ctrl + Enter. 😄

Esta es una opcion En MySQL
Es la base de datos con la que he estudiado.

El cliente de MySQL trae por defecto dentro de las utilerías, un comando que nos sirve para realizar respaldos de datos en el servidor MySQL. Dicho comando es mysqldump.

El comando mysqldump se utiliza desde la terminal y recibe una serie de parámetros en los cuales podemos definir el realizar un respaldo completo del servidor, de una base de datos específica ó tablas específicas dentro de una base de datos. Esto es muy útil cuando tenemos información crítica y deseamos implementar una tarea automática de respaldos.

Así como con el cliente de MySQL, el comando mysqldump necesita de un usuario que tenga los privilegios necesarios para extraer la información de la base de datos a respaldar.

La sintáxis básica del comando mysqldump es:

mysqldump -u [usuario] -p [base de datos] > [archivo de respaldo].sql
Rutinas básicas con el comando mysqldump
Dentro de las rutinas básicas de respaldo podemos encontrar las siguientes:

Respaldo completo de una base de datos
mysqldump -u [usuario] -p [base de datos] > [archivo de respaldo].sql
Respaldo parcial de una base de datos
mysqldump -u [usuario] -p [base de datos] [tabla1] [tabla2] > [archivo de respaldo].sql
Respaldo parcial de una base de datos, sólo estructura (sin datos)
mysqldump -u [usuario] -p [base de datos] [tabla1] [tabla2] --no-data > [archivo de respaldo].sql
Respaldo completo de todas las bases de datos
mysqldump -u [usuario] -p --all-databases > [archivo de respaldo].sql
Respaldo parcial de una tabla a formato CSV
mysqldump -u [usuario] -p --tab /tmp --fields-enclosed-by=" --fields-terminated-by=, [base de datos] [tabla1] [tabla2]
Este último comando va a crear dos archivos para cada tabla, uno en formato .txt con la información y otro en formato .sql con la estructura de la tabla.

Enlace https://www.nanotutoriales.com/como-crear-un-respaldo-en-una-base-de-datos-mysql

gracias por dictar el curso con tanta claridad, la verdad los acercamientos que he tenido a bases de datos en la universidad me habían hecho tenerles miedo pero está siendo muy ameno el curso.

Insert, como su nombre indica, agrega un nuevo registro a nuestra tabla en la base de datos. Es decir insertar registro o renglones en la estructura básica. Primeramente va en el comando: “SELECT INTO” y, luego va: “VALUES”, value, significa los valores que se van a colocar en los select, que se escogieron anteriormente. Es importante conocer que los campos que estén, “vacios”, se coloquen con el valor default, que decidimos poner. Recomendaciones: (i)ES IMPORTANTE MANTENER EL ORDEN, de los campos que se pusieron arriba. hay que tener cuidado con ver el orden y, los datos Default en la configuración de los “objetos”

Insert: Inserta o agrega nuevos registros a la tabla.
Update: Actualiza o modifica los datos que ya existen.
Delete: Esta sentencia es riesgosa porque puede borrar el contenido de una tabla.
Select: Trae información de la base de datos.

Insert agrega registros a una tabla
Se puede ingresar todos los campos, o se dejan vacíos algunos, ahí es donde entra el valor por defecto de la tabla.
Insertar a una tabla estos valores.

Recuerden siempre poner el where miren lo que le paso a gitlab que de suerte se salvo o si no hoy no existiria gitlab
https://www.youtube.com/watch?v=3gzyy9UMRvg&t=1s

¡Hola!
Comparto queries para que realices los ejercicios 😃

Insert
INSERT INTO people (last_name, first_name, address, city)
VALUES (‘Hernández’, ‘Laura’, ‘Calle 21’, ‘Monterrey’);

Update
UPDATE people
SET last_name = ‘Chávez’, city= 'Mérida’
WHERE person_id = 1;

UPDATE people
SET first_name = 'Juan’
WHERE city = ‘Mérida’;

Para los que no lo conozcan y se quieran reir un rato, busquen en youtube “No te olvides de poner el where en el delete from” 😛

No es necesario poner las letras mayúsculas a las palabras reservadas, de cualquier manera funcionan, es mas una buena practica

Cada vez mejor se pone el curso, me esta encantando el mundo de las bases de datos y eso que recién comienza

Este articulo se ve interesante:
link

No te olvides de poner el WHERE en DELETE FROM... https://youtu.be/i_cVJgIz_Cs

Facil 😃

DLL= Data Definition Languages (CREATE, DROP, ALTER)
-Para crear la estructura de la Base de datos
DML=Data Manipulation Language (INSERT, UPDATE, DELETE)
-Para manipular la data

Por lo que veo MySQL no conoce a nuestro amigo Ctrl + z

Habia trabajado con DB varias veces y hasta ahora aprendo que existe DDL y DML. Buena clase.

Para las personas que realizaron la practica anterior de eliminar la bases de datos. Aquí les dejo nuevamente los datos de la tabla people.

INSERT INTO platzi_test.people (person_id,last_name, first_name, address, city)
VALUES (1,‘Vázquez’, ‘Israel’, ‘Reforma 222’, ‘Mexico’);

INSERT INTO platzi_test.people (person_id,last_name, first_name, address, city)
VALUES (2,‘Alanís’, ‘Edgar’, ‘Avenida siempreviva’, ‘Morelia’);

INSERT INTO platzi_test.people (person_id,last_name, first_name, address, city)
VALUES (3,‘Hernández’, ‘Mónica’, ‘Pensilvania 1600’, ‘Aguascalientes’);

INSERT INTO platzi_test.people (person_id,last_name, first_name, address, city)
VALUES (4,‘Hernández’, ‘Laura’, ‘Calle 21’, ‘Monterrey’);

primer codigo

INSERT INTO people (last_name, first_name, address, city)
VALUES ("Hernandez", "Laura", "Calle 12", "Monterey");

segundo

UPDATE people
SET last_name='Chavez', city='Merida'
WHERE person_id=1;

tercero

UPDATE people
SET first_name='Juan'
WHERE city='Merida';

soy el unico que toma la clase en velocidad 1.5x jajajsj

El profesor dijo que el update con un where muy general (o sin el) no se podia hacer debido al modo seguro de MySQL.
Aquí un tutorial para desactivar ese modo seguro
https://www.geeksengine.com/database/manage-table/safe-update.php#:~:text=SET SQL_SAFE_UPDATES%3D0%3B,Query -> Reconnect to Server.

‘DML es sobre el contenido de la base de datos’, esto nunca me lo explicaron así en la Universidad.

Donde se te olvide el WHERE en un update o delete tu estado de empleado será actualizado a cliente :v

por si la borraron u.u , lo ejecutan en el Query

CREATE DATABASE IF NOT EXISTS platziblog;
-- SHOW DATABASES; ver bases de datos
USE platziblog;
CREATE TABLE IF NOT EXISTS people (
person_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
last_name VARCHAR(255) NULL,
first_name VARCHAR(255) NULL,
address VARCHAR(255) NULL, 
city VARCHAR(255) NULL
);
-- SHOW TABLES ; ver tablas
DESCRIBE people; -- ver la estructura de la tabla

por si alguien le paso de que les marca el siguiente error:

You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe mode, toggle the option in Preferences

Tienen que ir a Edit>Preferences

el la ventana ir a sql editor y en la parte inferior desmarcar la opción de “Safe Updates”

y solo reiniciar la conexión, listo con ello podrás realizar cambios:

Estoy muy feliz aprendiendo todo esto!
![](

Gracias ❤️

Práctica de la clase 👨‍💻

# DML INSERT: Agregandon registros a nuestra tabla people de la base de datos platziblog

INSERT INTO platziblog.people (last_name, first_name, address, city)
VALUE ("FRAGOZO", "NARENN", "Carrera 123 calle 14", "Santa Marta");



# DML SELECT: Seleccionando registros
SELECT * FROM people ;
SELECT  city, first_name  FROM platziblog.people  WHERE  city="Mexico";


# DML UPDATE: Actualizando nuestros registros
UPDATE platziblog.people SET  first_name="Naren", last_name="Fragozo" WHERE persona_id=4; 


# DML DELETE: Eliminadno algunos registros
DELETE FROM people WHERE persona_id=4 ;

En caso de que les salga el siguiente error MySQL error code: 1175 during UPDATE in MySQL Workbench aqui les dejo el link con el que solucione el problema.

https://stackoverflow.com/questions/11448068/mysql-error-code-1175-during-update-in-mysql-workbench

yo hice varias columnas y realice el ejercicio no solo de borrar un dato de un id si no de varios, me fue genial este profesor explica muy bien y me gustan las clases practicas ya que deja la monotonia de solo explicar sin aplicar en la vida real

Sinceramente creo quela forma de explicar es sencilla y acertada, ya que siento que aunque los ejemplo son basicos avanzo a montones, me gusta que al profe le vayan saliendo errores que practicamente nos saldrian a todos y que los soluciona de inmediato

SELECT * FROM world 
WHERE "someone" 
LIKE "%you%";

Este video necesitaba estar 2 videos antes, los últimos dos no pude hacer nada sin saber como meter valores.

Algunos conceptos fundamentales:
https://www.w3schools.in/mysql/ddl-dml-dcl/

Buenas realice las diferencias sentencias y las comente.

#Insertar datos
insert into people (last_name,first_name,
address,city)
values ('Hernandez','Laura','Calle 21','Monterrey');
#Actualizar datos
update people 
set last_name= 'Chavez', city = 'Merida'
where person_id = 4;

#Eliminar una sola columna
delete from people
where person_id = 5;

#Trae la informacion de la base de datos segun  la fila seleccionada
select first_name,last_name from people;

DML

INSERT INTO people (last_name, first_name, address, city)
VALUES ('Hernández', 'Laura', 'Calle 21', 'Monterey'); -- Insertar un regsitro

INSERT INTO people (last_name,first_name,address,city)
VALUES ('Vázquez', 'Israel','Calle Famosa Num 1','México'),
('Hernández','Mónica','Reforma 222','México'),
('Alanis','Edgar','Central 1', 'Monterrey'); -- Intertar varios registros

UPDATE people 
SET last_name = 'Chávez', city = 'Mérida'
WHERE people_id = 1; -- Actualiza datos de un registro dónde el id es 1

UPDATE people 
SET first_name = 'Juan'
WHERE city = 'Mérida'; -- Actualiza todos los nombres que ciudad Mérida

DELETE FROM people 
WHERE people_id = 1; -- Borra los datos de un registro dónde el id es 1

DELETE FROM people; -- Borra los datos de toda la tabla

SELECT last_name, first_name
FROM people -- Consulta sencilla de campos que necesitamos en una tabla

Hola compañeros.
Tratando de ingresar como dato una fecha de nacimiento, tipo de dato “DATE”, luego de tantos intentos y buscar en la web, el formato aceptado fue el siguiente:
** DATE ‘1997-05-06’**
Por si a alguien le sucede lo mismo.

Si eres avispado ya te habrás dado cuenta… Y yo todo despistado jajaja