You don't have access to this class

Keep learning! Join and start boosting your career

Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

0 Días
15 Hrs
1 Min
19 Seg
Curso de SQL y MySQL 2018

Curso de SQL y MySQL 2018

Alberto Alcocer (Beco)

Alberto Alcocer (Beco)

Bash y archivos SQL

14/24
Resources

How to use tools to manage large databases?

Welcome to the fascinating world of database management! Here we will show you how to use some tools to manage large databases in MySQL, which can be invaluable to your career in information technology. This content is designed to help you improve your database skills and understanding, allowing you to move forward with confidence on more complex projects.

How to organize and bulk load data into MySQL?

When working with huge databases, manual data loading can be inefficient and error-prone. Fortunately, there are methods for bulk loading data that save time and effort.

  1. Prepare the SQL files: Before you start importing, it is essential that you have your data organized in text files with an .sql extension. In this class, two important documents were mentioned: the database schema(All Schema) and all data(All Data).

  2. Loading from the terminal: To import complete files from the terminal into MySQL, the use of the redirect less than (<) command is crucial. This command takes the contents of a file and sends it to the MySQL input standard:

    mysql -u root -p < AllSchema.sql

When executing this command, make sure you are at the location of the file within the terminal, and make sure you have the necessary permissions for the database.

  1. Specify the database correctly: When importing data, it is important to tell MySQL which database it will use. This is done with the -D parameter followed by the database name:

    mysql -u root -p -D CursoPlatsy < AllData.sql

In this way, the data will be imported correctly without confusion on the target database.

What precautions to take before importing data?

Preparation and caution are key when handling big data. Here are some recommendations to minimize the risk of errors:

  • Confirm the non-existence of the database: Before re-creating a database, verify that it does not already exist, or that it is OK to delete it.
  • Check permissions: Make sure you have the necessary permissions to make changes to the database, especially if you are in a production environment.
  • Validate the syntax of your SQL files: Verify that your .sql files are well-formed and have the correct syntax.

Why is the SELECT command important?

Once the data is loaded, the task continues with extracting useful information from these sizable data sets. This is where the SELECT command becomes the most powerful tool at your disposal.

  • Versatility: SELECT not only extracts data, but also allows you to filter, sort and perform calculations.

  • Detail and Power: You can perform queries as simple as selecting everything from a table, to complex combinations with multiple conditions and relationships between tables.

    SELECT * FROM authors;

This command retrieves all the records in the authors table. You can refine your queries using WHERE, ORDER BY or other clauses to get the data exactly as you need it.

Next steps

Exploring databases can be a challenging but extremely rewarding journey. With these tools and commands at your disposal, you are prepared to handle and import massive data efficiently and then extract valuable information using SELECT. Keep exploring and practicing, your skills will grow and you will become an expert in no time!

Contributions 141

Questions 31

Sort by:

Want to see more contributions, questions and answers from the community?

Pasos para hacerlo en Windows

Nota importante:
El archivo que se encuentra en “Archivos y Enlaces” contiene all_data y all_schema que menciona el profesor, los 2 se encuentran en uno. Recomiendo re nombrarlo pues el nombre es largo, en mi caso mi archivo se llama all.sql


1.- Abrir consola y situarse en la ruta donde se encuentra tu archivo descargado con el comando “cd”, en mi caso es :

2.- Escribir los comandos como cuando entramos a MySQL como especifica el profesor en clase , el comando es:
mysql -u root -p < all.sql

Y por ultimo ingresar la contraseña.


Si aparece el error “mysql no se reconoce como un comando interno o externo, programa o archivo por lotes ejecutable” es porque Windows no reconocer el comando mysql , para esto hay que seguir la serie de pasos que nuestro compañero prsanchez nos presenta:
https://platzi.com/tutoriales/1272-sql-mysql/2256-como-arreglar-mysql-no-se-reconoce-como-un-comando-interno-o-externo-programa-o-archivo-por-lotes-ejecutable/

Una vez terminado de configurar habrá que cerrar la consola y hacer nuevamente los pasos 1 y 2, no deberá presentar problema alguno.

Basada en los datos del script , creo que este sería el diagrama para la base de datos de pruebas, no sé ustedes, pero a mi me gusta mucho tener estos diagramas para hacerme una idea mental más clara, corríjanme si me equivoqué, gracias!.

WINDOWS

1. Oprimimos INICIO + R, excribimos CMD y presionamos ENTER. La consola debe abrirse y generalmente se encuentra ubicada en C:\Users\User>

C:\Users\User>

2. Una vez aqui, debemos entrar a MySQL y para ello, escribimos la siguiente instruccion mysql -u root -p y presionamos ENTER para poder escribir el password.

C:\Users\User>mysql -u root -p

3. En este punto esto “C:\Users\User>” se tansformo en esto “mysql>” lo que determina que entramos con exito a MySQL desde la consola de Windows.

mysql>

4. Luego escribimos el comando (source + espacio + ruta del archivo all_schema.sql) esto nos va a permitir hacer el llamado para traer los archivos a MySQL!

mysql>source C:/Users/User/Desktop/platziDB/all_schema.sql

5. Aqui repetimos el paso anterior pero con el archivo all_data.sql

source C:/Users/User/Desktop/platziDB/all_data.sql

6. Aqui debemos abrir otra consola nueva siguiendo el Paso 1 y una vez este la consola abierta, debemos desplazarnos al directorio o carpeta que contiene nuestros archivos all_schema.sql y all_data.sql. Para este proceso hacemos uso del comando cd!

C:\Users\User\Desktop\platziDB>

7. Y finalmente, cuando desde la consola estamos en la carpeta donde estan nuestros archivos, ingresamos la siguiente instruccion mysql -u root -p -D cursoplatzi < all_data.sql para agregar los registros de all_data.sql a la base de datos cursoplatzi

C:\Users\User\Desktop\platziDB>mysql -u root -p -D cursoplatzi < all_data.sql

8. Ahora desde la consola de MySQL verificamos que se haya agregado todo correctamente.

Aquí les dejo estos registros para la tabla transactions:

<INSERT INTO transactions(transaction_id, book_id, client_id, type, finished) VALUES(NULL, 3, 7, 'lend', 0);
INSERT INTO transactions(transaction_id, book_id, client_id, type, finished) VALUES(NULL, 4, 8, 'sell', 0);
INSERT INTO transactions(transaction_id, book_id, client_id, type, finished) VALUES(NULL, 6, 3, 'sell', 1);
INSERT INTO transactions(transaction_id, book_id, client_id, type, finished) VALUES(NULL, 5, 2, 'lend', 1);
INSERT INTO transactions(transaction_id, book_id, client_id, type, finished) VALUES(NULL, 10, 4, 'lend', 0);
INSERT INTO transactions(transaction_id, book_id, client_id, type, finished) VALUES(NULL, 12, 9, 'sell', 1);>

Buenas ya lo resolvi en Windows 10.Renombre la descarga
all.sql.
En la consola lo siguiente.
mysql> source c:/Users/Fe_pa/Desktop/all.sql
listo
enter
y se descarga todo.
Saludos.

Ojo!! team platzi si es preciso que los estudiantes aprendan la buena practica de investigar, pero para esta parte del curso hay inconsistencia.

Funciona de la misma manera en la consola de Windows.

mysql -h localhost -u root -p < D:\Platzi\CursoDe_SQL_y_MySQL\all.sql

Capaz ayude a alguno, los archivos all_data.sql y all_schema.sql los juntaron y estan en all.sql. En la consola windows, ya dentro de mysql, escriben source ''dirección de all.sql" , le dan enter y listo!!

/* Ejecutar estar posicionado en la carpeta*/

/*Ejecutar un script desde la terminal SQL (Unix)*/
mysql -u root -p -h localhost < name_script.sql

/*
Ejecutar el script diciendole a que bases de datos debe ejecutarse
*/

mysql -u root -p -h localhost -D name_data_bases < name_script.sql

Hola, para todos los q sufrieron para hacer esta clase en windows, a mi me resultó entrar a la terminal (cmd), desde ahí entrar a la carpeta donde guardé el archivo schema.sql y escribir el codigo que dejó el profesor, asi:
C:\Users\Edgar>cd desktop

C:\Users\Edgar\Desktop>cd PLATZI

C:\Users\Edgar\Desktop\PLATZI>cd schema

C:\Users\Edgar\Desktop\PLATZI\schema>mysql -u root -p <all_shema.sql
Enter password: **********

C:\Users\Edgar\Desktop\PLATZI\schema>

queria poner la imagen pero no se como se hace.
Luego habren otra terminal (powershell) en donde siempre lo estuvieron haciendo para las clases y entrar a su mysql y listo. Ya deberia estar.
pd. espero les sirva.

En Windows 11 (Marzo 2022) para importar el archivo .SQL se debe ingresar primero a mysql, escribir source y poner la ruta completa hacia el archivo.

mysql> source C:/Carpeta/.../archivo.sql

com carajos hago esto en docker?

Que buena herramienta, gracias a los que comentaron y resolvieron dudas!

Hola, les comento que yo también tenías dudas sobre como cargar el archivo .sql con el terminal de windows, pero basado en los aportes de los compañeros seguí los siguientes pasos:

  • Abrí el terminal y con el comando “cd” accedí al directorio donde tenia el archivo .sql que descargué de la sección de archivos:
cd C:\Users\Moises\Documents\Estudios\Platzi\MySQLySQL
  • Luego procedí con el comando indicado en clase por el profesor:
mysql -u root -p <all_schema.sql
  • Listo, ahora ingresando al MySQL como de costumbre y ya deberíamos ver toda la información cargada correctamente.

Aquí les dejo un capture de mi terminal:

Estos son los pasos para ejecutar los archivos en windows:

En donde se ubican los archivos antes de dar la instrucción en MYsql?

BASH=(Bourne-again shell) es un programa informático, cuya función consiste en interpretar órdenes, y un lenguaje de consola. Es una shell de Unix o también shell, es el término usado en informática para referirse a un intérprete de comandos, el cual consiste en la interfaz de usuario tradicional de los sistemas operativos basados en Unix y similares, como GNU/Linux.

En mi Ubuntu 18.04 escribí el comando

<mysql -u root -p < Descargas/all.sql>

Tener en cuenta el directorio donde se descarga el archivo .sql, por eso coloque el “Descargas”

Uso Mac y no me funcionó el comando del profesor en terminal. Aquí les dejo lo que use
/usr/local/mysql/bin/mysql -uroot -p <path

El path lo pueden encontrar seleccionando el archivo y llevándolo a la terminal

/usr/local/mysql/bin/mysql -uroot -p </Users/XXXX/Documents/SQL/Platzi/all.sql

Windows 10
mysql> source c:/ PATH /all.sql

A mi me funcionó de la siguiente forma (win10):

  1. Entrar a la carpeta donde tenia el archivo
    D:\Mis documentos\PLATZI\CURSO DE SQL Y MYSQL>
    (cd para entrar a una carpeta, cd… para salir de una carpeta)
  2. ejecutar el comando:
    D:\Mis documentos\PLATZI\CURSO DE SQL Y MYSQL>mysql -u root -h localhost -p < all.sql
    Enter password: **********

(importante conservar los espacios)

  1. entrar a my sql común y corriente
    D:\Mis documentos\PLATZI\CURSO DE SQL Y MYSQL>mysql -u root -h localhost -p
    Enter password: **********

Se puede importar una base de datos en texto plano con el comando:
mysql -u root -p <all_schema.sql
Para transferirle data a la BD utilizamos: (Este tecnología es ajena a MySQL, esto es parte de la línea de comandos de UNIX, que arrastra todo lo que está en el archivo de texto e introdúcelo al standard input del MySQL y acaba el proceso.)
mysql -u root -p -D cursoplatzi <all_data.sql

En fundamentos de base de datos ligaban las tablas con la FOREIGN KEY. Me parece que ha dejado las tablas sueltas y no podría visualizar el diagrama E-R. Hablara algo de ello más adelante ?

Hola, si es de utilidad les dejo el ejemplo para Windows como lo muestra el profe:

<h3>Requisitos</h3>
  • Archivo all.sql.
  • Ruta de carpeta de trabajo para el curso donde esta el archivo all.sql.
  • Configura variables de entorno para mysql:
  1. Ve a variables de entorno:
  2. modifica el path agregando una nueva variable, explorando y agregando la ruta C:\Program Files\MySQL\MySQL Server 8.0\bin
<h3>Comando de inserción de archivo</h3>

Desde una consola de comandos en windows navega hasta la carpeta de archivos de tu curso SQL, estándo allí ejecuta el comando de la clase:

  • mysql -u root -p < all.sql

con esto cargarán todos los datos del archivo, recuerda agregar las líneas:

<INSERT INTO `transactions` (client_id, book_id, `type`, finished) 
VALUES (34, 12, 'sell', 1),
(87, 54, 'lend', 0),
(14, 3, 'sell', 1),
(54, 1, 'sell', 1),
(81, 12, 'lend', 1),
(81, 12, 'return', 1),
(29, 87, 'sell', 1);

--Nunca pares de aprender!>

.

Para usuarios de WINDOWS con código de error:

**“El operador ‘<’ está reservado para uso futuro”
**
Escribir antes del comando: cmd.exe /c
y luego entre comillas todo lo demás. Por ejemplo:

cmd.exe /c “mysql -u root -p < all.sql”

Tomen en cuenta que él está trabajando en sistema operativo Linux
El comando “$ls -l” es utilizado en sistemas operativos Unix y Linux para mostrar información detallada sobre los archivos y directorios en la ubicación actual del usuario.

En Windows, el comando utilizado para listar archivos y directorios es “dir”

/p: Este modificador muestra la lista de archivos y directorios en pausas, lo que permite al usuario leer la información en la pantalla antes de que se muestre la siguiente página.

/w: Este modificador muestra los nombres de archivo en varias columnas.

/a: Este modificador muestra todos los archivos y directorios, incluyendo los archivos ocultos y de sistema.

/b: Este modificador muestra solo los nombres de archivo, sin información adicional.

/s: Este modificador muestra los archivos en la ubicación actual y en todas las subcarpetas.

Además, también se pueden utilizar otros modificadores para personalizar la salida del comando “dir”. Para ver una lista completa de los modificadores disponibles, se puede escribir “dir /?” en la línea de comandos.

En Windows, Enero 2024. Viendo todos los comentarios, intentando de todos las formas que dicen, entre otras cambiando lo de Path de “Editar las variables de entorno del sistema” como dijo el compañero **prsanchez** (y volviendo todo como estaba porque no me funcionó, quizás porque cambió algo en windows) La forma en que pude solucionarlo fué la siguiente: * Teniendo en cuenta que desde la Clase 5, donde NO explican cómo Instalar y Ejecutar Mysql por Consola en Windows, y gracias al compañero **Mauricio Sevilla** que subió el video a YouTube. usando xampp para usar el localhost hice lo siguiente: * Primero, cerrar la consola, abrirla de nuevo. `C:\Users\GEP>cd..` `C:\Users>cd..` * ir a la ruta donde está instalado mysql `C:\>cd Program Files\MySQL\MySQL Workbench 8.0` * agregar al código que siempre poníamos al principio '`mysql -u root -h localhost -p`' la ruta donde está el archivo a agregar: `C:\>cd Program Files\MySQL\MySQL Workbench 8.0> mysql -u root -h localhost -p <D:\Users\GEP\Documents\PROG\Platzi\CursoSQLyMySQL\all.sql` * colocar o no, como en mi caso la contraseña. Acá hay que volver a poner el 'mysql -u root -h localhost -p' sin la ruta del archivo: `C:\Program Files\MySQL\MySQL Workbench 8.0> mysql -u root -h localhost -p` * colocar o no, como en mi caso la contraseña. `mysql> show databases;` `+--------------------+` `| Database |` `+--------------------+` `| information_schema |` `| mysql |` `| performance_schema |` `| phpmyadmin |` `| platzi_operation |` `| pruebaplatzi |` `| test |` `+--------------------+` * Y ahora si está la **BD** dentro de mysql!! **NOTA:** si la ruta tiene espacios tirará el error que no encuentra el archivo, ej: \
SI les pasa como a mi que se estan enredando un poco con la instalación en WSL con ubuntu, desde mysql -V 8 cambia un poco todo, al final pueden llevar el archivo de los recursos all.sql a un directorio en ubuntu, dejarlo alli y desde mysql en la terminal ingresan el siguiente codigo: source /home/"tu usuario"/"nombre del directorio"/"nombre del archivo, ej: all.sql" Y con esto hacen los mismo que hace el profesor desde \[schema].
# El comando Source y como usarlo! Claro, aquí tienes un resumen del comando `source` en MySQL: \### Resumen del Comando `source` en MySQL \*\*Funcionalidad\*\*: \- El comando `source` se utiliza dentro del cliente de línea de comandos de MySQL para ejecutar comandos SQL desde un archivo. \*\*Sintaxis\*\*: ```sql source /ruta/al/archivo.sql; ``` \### Pasos para Usar el Comando `source` 1\. \*\*Crear el Archivo SQL\*\*: \- Crea un archivo de texto con las instrucciones SQL que deseas ejecutar y guárdalo con extensión `.sql`. 2\. \*\*Abrir el Cliente de Línea de Comandos de MySQL\*\*: \- Conéctate a tu servidor MySQL usando el terminal o símbolo del sistema: ```sh mysql -u tu\_usuario -p ``` \- Ingresa la contraseña cuando se te solicite. 3\. \*\*Seleccionar la Base de Datos\*\*: \- Elige la base de datos en la que deseas ejecutar el script: ```sql USE nombre\_de\_tu\_base\_de\_datos; ``` 4\. \*\*Ejecutar el Comando `source`\*\*: \- Ejecuta el script SQL desde el archivo: ```sql source /ruta/completa/al/archivo/script.sql; ``` \### Ejemplo Completo Si tienes un archivo `script.sql` en `C:\scripts` con el siguiente contenido: ```sql CREATE TABLE books ( book\_id INTEGER UNSIGNED PRIMARY KEY AUTO\_INCREMENT, title VARCHAR(100) NOT NULL, author\_id INTEGER UNSIGNED, year INTEGER NOT NULL DEFAULT 1900, language VARCHAR(2) NOT NULL DEFAULT 'es', cover\_url VARCHAR(500), price DOUBLE(6,2) NOT NULL DEFAULT 10.0, sellable TINYINT(1) DEFAULT 1, copies INTEGER NOT NULL DEFAULT 1, description TEXT ); INSERT INTO books (title, author\_id, year, language, cover\_url, price, sellable, copies, description) VALUES ('Book Title 1', 1, 2000, 'en', 'https://example.com/cover1.jpg', 15.50, 1, 5, 'Description 1'), ('Book Title 2', 2, 1995, 'es', 'https://example.com/cover2.jpg', 20.00, 1, 3, 'Description 2'); ``` Para ejecutarlo: 1\. \*\*Conéctate a MySQL\*\*: ```sh mysql -u tu\_usuario -p ``` 2\. \*\*Selecciona tu base de datos\*\*: ```sql USE nombre\_de\_tu\_base\_de\_datos; ``` 3\. \*\*Ejecuta el archivo SQL con `source`\*\*: ```sql source C:/scripts/script.sql; ``` \### Beneficios del Comando `source` \- \*\*Automatización\*\*: Permite la ejecución de múltiples comandos SQL de manera secuencial y automatizada. \- \*\*Eficiencia\*\*: Evita la necesidad de escribir cada comando manualmente. \- \*\*Facilidad de Uso\*\*: Ideal para importar bases de datos o ejecutar configuraciones iniciales de manera rápida y sin errores manuales. \### Consideraciones \- Verifica que la ruta del archivo sea correcta y que el archivo tenga los permisos adecuados para ser leído. \- Asegúrate de que el archivo SQL esté libre de errores sintácticos antes de ejecutarlo. El comando `source` es una herramienta poderosa para ejecutar scripts SQL en MySQL de manera eficiente y automatizada.
![](https://static.platzi.com/media/user_upload/image-19ae1113-d82e-4ce4-9ab2-90dd2c7ee815.jpg) Para los que trabajan con Docker podemos copiar el archivo del host al contenedor de esta forma, luego podemos ejecutar la instrucción que deja el profesor. Lean los otros comentarios, hay aportes sobre ello.

En donde encuentro las operaciones ?En los adjuntos no aparece y tampoco figuran las notas que indica el profe sobre de donde sacó los nombres.

Funciono y es muy util. Pero en los enlaces solo hay un archivo que crea las tablas e inserta la data.

Para los que tengan Windows y no puedan correr el archivo .sql desde CMD.

  1. Deben tener la variable de entorno mysql agregada en el sistema, el siguiente es un link con el que podrán hacerlo: https://platzi.com/tutoriales/1272-sql-mysql/2256-como-arreglar-mysql-no-se-reconoce-como-un-comando-interno-o-externo-programa-o-archivo-por-lotes-ejecutable/

  2. Abrir el terminal y con el comando “cd” accedí al directorio donde tenia el archivo .sql que descargué de la sección de archivos:

cd D:\_Me\PLATZI\SQLyMySQL
  1. Luego con el comando indicado en clase por el profesor:
mysql -u root -p all_schema.sql
  1. A partir de ahora podrán ejecutar la linea de comandos de mysql desde cmd simplemente accediendo asi e ingresando su contraseña:
mysql -u root -p

Hasta ahora el curso me gusta bastante, a pesar de que esta un poco desactualizado en cuanto a algunas cosas, es todo muy aplicable.

Buenos días!, esta clase me ha llevado tiempo, aunque pueda ser muy fácil para otros, agradezco mucho a los estudiantes que se tomaron el trabajo de crear notas ( de hasta 2 años atrás) ya que gracias a ellos y probando lo pude resolver:
mi versión de mysql server es :8.0.22 y tengo W10.
los pasos que realice fueron:
1- ejecutar mysql x linea de comandos:
mysql -u root -p

2- si esto da error deberas añadir my sql a la variables de sistema de W10, hay un tutorial publicado aquí mismo.

3- una vez solucionado ya dentro de mysql deberas ejecutar el comando source + path del archivo:

source C:/Users/joseg/Platzi/Curso SQL y MySQL/all.sql ;

los warnings lo elimine en mi version con:

utf8 —> utf8mb4
int(10) —> int
tynyint(1) —> tynyint

ya que en mi versión estos comandos están depreciados.

Sigan adelante por mas de que cueste y a veces tengan problemas con las " herramientas" .
Es frustrante cuando tenes un tiempo justo de estudio y " no podes avanzar nada ese dia" , luego se resuelve, te das cuenta faltaba de realizar.
Al final comprendes que lo importante, aunque tardes un poco mas es aprender…

Que buena clase, estoy bastante impresionado como es de “sencillo” entre comillas por que sabemos que es un trabajo mucho muy demandante y hacer este proceso.
De mis cursos favoritos……
😄

¿Existe alguna forma de exportar una base de datos desde la consola?🤔

Que significa BASH y como se implementa para realizar la clase???

Este comentario les ayudara mucho a los que estan trabajando con la consola de windows

https://platzi.com/comentario/719648/

Para quienes estén distraídos/as igual que yo, los 2 archivos de los que habla el profesor (estructura y datos) están unidos en un sólo archivo y en realidad no van a ver creada la base de datos llamada cursoplatzi porque en este sql que nos compartieron, la base de datos se llama pruebaplatzi 😦 me di cuenta después de 20 minutos porque pensé que no estaba trayendo nada.

me funciono de la siguiente forma, después de estar en mysql colocar:

source C:/Users/mcollazo/Desktop/Escritorio/Cursos/MySql Practico/all.sql

Ejecutar un script desde la terminal indicando la Bases de datos: mysql -u root -p -h localhost -D name_data_bases < name_script.sql

Hola, para los que estamos usando powerShell se debe ejecutar así:

  • Get-Content all.sql | mysql -u root -p

Una ayuda para los que tengan problemas desde el bash, quizas a algunos se les genera un error a la hora de cargar los schema o la data de la forma que lo hace el profesor en el video, si les pasa eso hagan lo siguiente:

*Ubiquen el apuntador del bash (osea la ruta) donde tienen ubicados los archivos all_schema.sql y all_data.sql.
En mi caso un ejemplo:

C:\Users\Drakolinux\Documents\Platzi\SQL\pruebaplatzi

*Una vez ubicados en esta carpeta ejecutan el comando:

mysql -h 127.0.0.1 -P 3306 -u root -p < all_schema.sql

*Posteriormente ejecutan:

mysql -h 127.0.0.1 -P 3306 -u root -p

Y chequean que la base de datos se halla creado correctamente, una vez comprobado vuelvan a salir de mysql a linea de comandos del prompt nuevamente.

*Ahora ejecutan el siguiente comando para introducir la data:

mysql -h 127.0.0.1 -P 3306 -u root -p pruebaplatzi < all_data.sql

Importante ejecutarlos siempre ubicados sobre el directorio donde se encuentra el archivo, una vez hecho esto ya tienen todo listo, ejecutan nuevamente:

mysql -h 127.0.0.1 -P 3306 -u root -p 

Y comprueban que todo se halla cargado correctamente. Espero les sirva!

No se quienes ni que tanto utilicen el _**MySQL 8.0 Command Line Client **_pero creo que puedo hacer dos aportes el primero la forma que yo borro pantalla es

<system cls> 

y la forma de importar archivos de .SQL es

<source  C:\La carpeta del archivo\El archivo.sql> 

el sistema lo importa y ejecuta automáticamente si desean pueden quitarle el ; para revisarlo antes de correrlo

Hay tres elementos a tomar en cuenta, espero les sirva. A mi me tomó bastante tiempo comprenderlos pero acá están:

  1. Faltan las transacciones de la tabla transactions
INSERT INTO`transactions`(client_id, book_id, `type`, finished) VALUES
(34, 12, 'sell', 1), 
(87, 54, 'lend', 0), 
(14, 3, 'sell', 1), 
(54, 1, 'sell', 1), 
(81, 12, 'lend', 1),
(81, 12, 'return', 1), 
(29, 87, 'sell', 1);
  1. En la creación de la tabla transactions, en type agregar: ‘return’
  `type` enum('lend','sell','return') NOT NULL,
  1. En Windows por alguna razón no funciona el comando ‘source’ así que use el siguiente comando desde el workbench
mysql -u root -p < C:/Users/jm_yg/Dropbox/Educación/MOOCS/1_Data_Science/Mysql/all.sql

Mi archivo se llama all.sql y lo tengo en mi carpeta de Dropbox. Espero les sea de mucha ayuda, la terminal que yo uso es Cmder

Cuando descargue el archivo lo copié a mi ruta de documentos, nunca lo pude abrir desde consola usando esa carpeta, así que decidí abrirlo desde mi carpeta de descargas y oh sorpresa, si pude. Espero les sirva

Por si les falta ingresar los registros de ‘transactions’:

INSERT INTO transactions(transaction_id, book_id, client_id, type, finished)
VALUES (NULL, 3, 7, ‘lend’, 0), (NULL, 4, 8, ‘sell’, 0), (NULL, 6, 3, ‘sell’, 1), (NULL, 5, 2, ‘lend’, 1), (NULL, 10, 4, ‘lend’, 0),(NULL, 12, 9, ‘sell’, 1);

La verdad que para estar pagando el curso y tener que aprender todo prácticamente desde fuera me parece pésimo. Agradezco a los chicos que comentan soluciones, pero los cursos en sí explican todo como si ya uno supiera todo lo que tiene que hacer, y además en un solo sistema operativo. Sigo estudiando, pero esperaba un mejor servicio en estos cursos.
INSERTINTO`transactions`(client_id, book_id, `type`, finished) VALUES
(34, 12, 'sell', 1), 
(87, 54, 'lend', 0), 
(14, 3, 'sell', 1), 
(54, 1, 'sell', 1), 
(81, 12, 'lend', 1), 
(81, 12, 'return', 1), 
(29, 87, 'sell', 1);```

me salia error en la mac mysql: command not found y para que sirviera tuve que poner esto:
export PATH=$PATH:/usr/local/mysql/bin

Crear base de datos a partir de archivos.

no tuve problemas con el archivo all.sql que viene en la pestaña de Archivos. (al descargarlo tenía un nombre muy largo pero lo renombré con el comando mv)

mysql -u root < all.sql


Hola, me sale este error, podrian ayudarme?

tengo el archivo all_sql en descargas, como hago para correrlo por consola cmd windows, alguien ayuda por favor.

Alguien me puede explicar de que se trata esta sentencia:

<) ENGINE=InnoDB DEFAULT CHARSET=utf8;>

gracias!

Excelente aporte

Desde la consola promp de windows me funciono a la perfección. No puede desde bash, ya que despues de que me pedia el password el programa no continuaba

Sobre acceder vs “accesar’ . La forma correcta es acceder. Accesar es un anglicismo.

Muy bien explicados los JOIN

No me carga el vídeo 😦

Si pude!!!

Los comando usados también funcionan para windows?

no entendí por qué se usaba prompt 2 al principio. No se si ya lo explicó y lo ignoré en otra clase (no recuerdo haberlo visto).

Muchas gracias por la aclaración!!

Estuvo super esta clase…

alguien sabe como hacerlo desde git bash? me salta error stdin is not a tty

Excelente la integracion del terminal con mysql.

si no se quieren complicar solo copien el contenido del archivo que esta en archivos y enlaces y con un editor como nano o vim crean un archivo en su home llamado por ejemplo all_data.sql y ahí pegan el código del archivo que descargaron. Después unicamente solo ejecutan el siguiente comando.

mysql -u root -p < all_data.sql```

Deben estas en la ruta donde crearon el archivo, lo pueden verificar con ls.

buenas tardes a todos: alguien me puede orientar por favor para realizar esta operación en la terminal de mac? Ya ubiqué el archivo en la ruta desde donde abro mysql pero me figura este error; gracias a quien pueda orientarme.

/usr/local/mysql/bin/mysql -u root -p -D platzi_operation < allsql.sql
zsh: no such file or directory: allsql.sql
daniel@Mateos-MacBook-Pro ~ %

Excelente información!!!

Curiosamente si se ejecuta esa misma linea de comando, en mi caso: mysql -u root -p < bash.sql en windows, esta funciona desde la consola regular (cmd), pero no funciona desde powershell, esta ultima lanza el error de que el operador ‘<’ esta reservado para su uso futuro

en MAC, tengo el código en VS y lo ejecutó en la terminal mysql> source desktop/SQL/prueba.sql (o en donde esté la ubicación de su carpeta o archivo

– ( DOLBE GUIÓN ES PARA COMENTARIA)
DROP DATABASES IF EXISTS.
use cursoplatzi;
show database;
cursoplarzi < all _data. sql
select * from authors;

En el momento de ejecutar el bash de Clients me sale esto.

Column count doesn't match value count at row 1```

Hola necesito una orientacion, el profe habla de all_data y all_shema, cuando me voy a los archivos solo me sale all_shema hasta la estructura de la tabla TRANSACTIONS pero no el INSERT para su llenado. Gracias

excelente curso

Aqui voy, ejecutando por linea de comando el cargado de los datos en windows:
C:\Program Files\MySQL\MySQL Server 8.0\bin>mysql -u root -p -D cursoplatzi <“C:\Users\edgar.mercado\Google Drive\CapacitacioN\PLATZI\Curso SQL y MySQL”\all_data.sql

A mi no me apareció pruebaplatzi en vez de cursoplatzi, aún así no hay problema.

me esta saliendo estos errores al intentar modificar la tabla de transacciones, creo que es por la version

ERROR 1265 (01000): Data truncated for column 'type' at row 6
mysql> <ALTER TABLE transactions  MODIFY `type` enum('lend','sell','return') NOT NULL;>
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '<ALTER TABLE transactions  MODIFY `type` enum('lend','sell','return') NOT NULL' at line 1
<code>

Ok. Buen curso.

Que chevere curso como subir data masivamente

Excelente.

solo lo comento por si alguien le paso, si les aparece el error
"ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061)" a pesar de agregar la variable del sistema o tener encendido el proceso desde sistema, vuelvan a instalar mysql, si tienen el instalador mejor, porque les abrira el menu y le dan en la opcion de modificar a sql server, ahi les menciona el puerto y aseguran tenerlo en 3306

Gracias! He entendido todo gracias a que previamente hice el curso de terminal y linea de comandos y adicional el curso de introducción a bases de datos. si se sigue la linea correcta esto es increiblemente poderoso.

Gracias!, He comprendido todo hasta aqui, me ha gustado los ejemplos y el enfoque practico orientado a las mejores practicas y la solución de problemas.

Tuve que separar las tablas de los insert, y ademas ingresar el insert de cada tabla por separado, por que no me funciono todo unido

Buenas Noches.

Cuando quiero acceder me aparece este error. Alguien de puede ayudar por favor?
Gracias.

insertar un script: mysql -u root -p -h localhost < name_script.sql

Excelente curso

Vaya, no sabia eso!

Excelente… aprendiendo cada vez más gracias Beco!

Pasar archivos completos a la base de datos a través de la consola.

No me funciono desde el bash, tuve que usar el prompt de windows, por mas que intentara me salia siempre el mismo error:

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ’/var/run/mysqld/mysqld.sock’ (2) 

Pero no pude encontrar una solución en bash si alguien sabe porque pasa esto me gustaría saber.

Si estan trabajando con ubuntu pueden usar el programa tmux (colocan el comando tal cual “tmux”) y abre un programa que puedes abrir multiplex terminales como el profesor presionando las teclas Ctrl+b seguido de la tecla % y divide la terminal con una linea vertical en dos terminales.

Medio que no coincide el archivo que dejó en los enlaces con el del video

Qué significa el [schema] ?

tenía un problema para acceder en windows me mandaba error en el archivo mysql.exe
para que se pueda acceder basta con buscar el acceso directo de mysql dar click derecho y abrir la ubicación del equipo, si aparece un acceso directo de igual manera dar click derecho y dar en abrir ubicacion del archivo una vez ahí copiar la ruta que aparece en la parte de arriba de la ventana regresar a CMD y poner cd ruta de MySQL
ejemplo: C:\Users\usuario> cd C:\Program Files\MySQL\MySQL Server 8.0\bin
una vez ahí ya pueden escribir tal cual como aparece en el video.
saludos espero les sirva de algo.

Tengo un problema y a la vez un a pregunta , es referido a las FK (Foreign Keys) , por ejemplo si quiero relacionar la tabla books con la tabla authors tendria que crear una FK asi :

ALTER TABLE books
ADD CONSTRAINT FK_BooksAuthor
FOREIGN KEY (author_id) REFERENCES authors(author_id);

pero si hago esto directamente me salta un error en la terminal :

mysql> use pruebaplatzi;
Database changed
mysql> ALTER TABLE books
    -> ADD CONSTRAINT FK_BooksAuthor
    -> FOREIGN KEY (author_id) REFERENCES authors(author_id);
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`pruebaplatzi`.`#sql-1550_2`, CONSTRAINT `FK_BooksAuthor` FOREIGN KEY (`author_id`) REFERENCES `authors` (`author_id`))```

Creo que es porque ya hay datos en las tablas ? y probablemente una tupla no este cumpliento los requisitos?  


Donde estan esos archivos que usan en la Clase?, No los encuentro