DDL: Lenguaje de Definición de Datos
Clase 8 de 23 • Curso de SQL y MySQL 2016
Contenido del curso
Edgardo Ramírez León
Daniel Alvarez
Enrique Arias
Nicole Chapaval
Carvajal
Luis Alfredo Torres Peña
Pamela Freyre
Alvaro Yanes Basanta
Luis Alfredo Torres Peña
Luis Hernandez
Pablo Benavides Molina
José Pillado
Abdiel Alfaro Manuel
Luis Rojas
Raul Montano
Islas Juan Pablo Juan Pablo
Arturo Mojica Guerrero
Abdiel Alfaro Manuel
José Miguel Dueñas Torres
Ricardo Martin Gomez
Sergio Mendoza Gomez
Fernando David Soto Betin
Ivan Ramos Sánchez
Nicole Chapaval
Ivan Ramos Sánchez
Juan Samudio
Afu Tse
Ignacio Ocampo Fontes
Luis Alberto Gonzalez
Arturo Mojica Guerrero
Camilo Acevedo Escalante
Luis Diaz Palacios Diaz Palacios
Me parece que se equivocó al decir la definición de Truncate ya que el lo refiere a eliminar completamente una tabla lo cual es falso, con truncate se vacia la tabla y se reinicia el conteo del auto increment (si es que lo tiene)
Yo tambien utilizo el truncate para borrar el contenido de una tabla mas no la tabla me parece tambien que hay un error de concepto en ese caso
Exacto, tienes razón.
Operaciones:
Create crea una tabla.
Alter altera la tabla. Agrega columnas, por ejemplo. Siempre, en las bases de datos relacionales, todos los registros tienen que tener un dato ahí.
Drop elimina columnas o tablas.
Delete elimina registros.
Truncate vacía la tabla.
Select filtra la información de la tabla o entre diferentes tablas (en toda la base de datos).
Insert inserta un nuevo campo. Es necesario llenar todas las columnas.
Update cambia uno o muchos registros.
Integridad referencial - relación entre varias tablas dentro de una base de datos. Hay motores que no tienen integridad referencial, esto permite borrar datos sin perder información.
Excelente resumen @maldeadora. ;)
Claro y preciso Nicole.
PRINCIPALES OPERACIONES
Create= crear una base de datos
Alter=modificar tablas de la base de datos
Drop=eliminar una tabla completa ,de una base de datos
Delete=elimina registros de la base de datos
Truncate=Operacion que inmediatamente elimina una tabla o una bd completamente
Select=Selecciona (filtra) los registros de la base de datos
Insert=insertar un nuevo campo
Update=modifica o actualiza un registro de la base de datos
Insertno se usa para insertar un nuevo campo (columna), su función es insertar nuevos registros (tuplas)
Hola, soy nuevo en el curso y me parece que en cuando al comando truncate hay una error de concepto dado que he leído que no elimina una tabla sino que elimina el contenido de la misma y__ resetea el campo identity__. Buen día
WTF, drop igual a truncate????? El drop se demora 15 minutos?????
Error de conceptos básico!!! Qué decepción!!!
drop elimina la tabla, truncate sólo la limpia (borra la data). Lo correcto es decir que delete se demora 15 minutos porque deja registros de la transacción en caso de querer hacer un rollback. El truncate limpia de manera automática sin dejar registro.
Esto no es un curso "Profesional de BD", es introductorio.
error de concepto tambien amigo, el truncate es una funcion a nivel motor base de datos, elimina la entidad y la vuelve a crear. Drop puede tardar si se hablan de millones de registros con mas de 30 campos y contenidos tipo bloop.
Saludos
Incluso los profesores de universidad tienen, de vez en cuando errores.
Antes de ejecutar cualquier operación preocupante hacer backup
hasta ahora un desastre, habla rápido, con mucho acento, muy saturada la voz y no es para principiantes, seguiré insistiendo a ver si cambia a medida que avance, y 100% teórico...
Hasta el momento simplemente esta explicando para que sirve cada uno de las operaciones mas utilizadas en MySQL.
El comando ALTER incluyen la adición o eliminación de una
columna, el cambio de la definición de una columna, y la adición o eliminación de restricciones. Esta operación es bloquearte, por lo que, si se realiza sobre una tabla con muchos registros se puede provocar la baja del sistema. Una buena practica es crear una replica del motor master sobre el cual se harán las modificaciones necesarias para luego setearlo como el nuevo master teniendo así las columnas modificadas sin perdida en la calidad del servicio.
Excelentes cuatro (4) tips:
Siempre que se crea una nueva columna se debe llenar completamente, ya sea con 0, null, números, pero siempre debe estar llena.
Create, alter y drop, afectan la organización de la tabla
Truncate, delete, select, insert, update, afectan los registros contenidos dentro de cada tabla
La diferencia entre delete y truncate no almancena información para hacer rollback y por eso es mas performante.
TRUNCATE TABLE vacia una tabla sin contemplar ninguna condicion, sin ejecutar alguna accion(trigger) que este encadenado a la accion de DELETE y restaura los contadores autoincrement , pero no permite rollbacks
DELETE permite eliminar filas de la tabla ejecutando una condicion de filtrado, o bien toda la tabla, permite ejecutar la accion(trigger) que este encadenado a la accion DELETE, permite el uso de rollback si el gestor de base de datos lo permite, su performance o desempeño es un mas lento que TRUNCATE ya que el borrado es por filas, ejecuta las acciones que estan encadenadas a la opcion DELETE y busca solo las filas que cumplan con el criterio dado si lo hubiera.
saludos
Todos los operadores no son DDL, como por ejemplo DML (Update, Insert, Delete, Select).
Amigos de platzi no se si revisen los comentarios, pero como critica altamente constructiva, pienso que a este curso ya le hace falta una segunda edición. No solo por el tiempo que ha pasado desde que se lanzó, si no por los claros huecos conceptuales que tiene el profesor, los cuales no mencionaré porque ya veo muchos de ellos escritos en los otros comentarios.
PD. Que mal ejemplo lo de la hoja de calculo.
Hola! Gracias por el feedback, definitivamente vamos a actualizar el curso muy pronto también porque tenemos una nueva metodología.
Hey, por qué no te gusta el ejemplo de la hoja de cálculo? Me interesa entender más esto, pues a mi que no sabía nada me pareció fantástico.
Hola, como ejemplo de abstración es bueno, lo que en definitiva no lo es, es el momento para meterlo así, sin más entre los temas. Para llegar a una base de datos o de como son compuestas mediante tablas debemos pasar por conceptos más básicos todavía como son: dato, tupla, archivo etc, incluso antes de esto conocer estos conceptos se debió de mencionar lo que es el algebra relacional y sus respectivas operaciones pues estás son el inicio de DML Y DDL.
Un buen DBA siempre crea backups antes de realizar cualquier operación crítica en la base de datos.
Pregunta, he visto que en consultas para relacionar 2 tablas algunas veces usan JOIN y otras solo se pone las tablas separadas por comas. Ejm: select * from tabla1, tabla2 where tabla1.id = tabla2.id.
Cual es la mejor forma de hacer la consulta o la mas optima
utilizar join es mas eficiente ya que trae los datos organizados, en cambio con el where primero los trae y después los organiza por ende doble trabajo.
Lo correcto sería hacer Select * From tabla1 JOIN tabla2 ON tabla1.id = tabla2.id
Siempre debe hacer un backup antes de realizar cualquier cambio....
Se que el video tiene unas falencias de conceptos, espero que se retroalimente para la proxima, pero tambien hay que exaltar la metodologia de crear la analogia de una BD con una hoja de calcula que me parece excelente.
Curso SQL & MySQL
¿Que es SQL?
DML
**DML** es la abreviatura de Data Manipulation Language . Se utiliza para recuperar, almacenar, modificar, eliminar, insertar y actualizar datos en la base de datos. Ejemplos: instrucciones **SELECT**, **UPDATE**, **INSERT**
DDL
**DDL** es la abreviatura de Data Definition Language . Se usa para crear y modificar la estructura de los objetos de la base de datos en la base de datos. Ejemplos: instrucciones **CREATE**, **ALTER**, **DROP**
DCL
**DCL** es la abreviatura de Data Control Language . Se usa para crear roles, permisos e integridad referencial, así como para controlar el acceso a la base de datos al protegerla. Ejemplos: declaraciones **GRANT**, **REVOKE**
TCL
**TCL** es la abreviatura de Lenguaje de control transaccional . Se usa para administrar diferentes transacciones que ocurren dentro de una base de datos.
Ejemplos: declaraciones COMMIT, ROLLBACK
Operaciones SQL
* Create * Select
* Alter * Insert
* Drop * Update
* Delete * Grant
* Truncate * Commit
* Revoke * RollBack
Integridad Referencial
Es la relación de referencia que existe entre todas las tablas que componen
la base de datos
TIPS:
Saludos!
no hay nada disponible por acá...