Compra acceso a todo Platzi por 1 a帽o

Antes: $249

Currency
$209/a帽o

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscr铆bete

Termina en:

16D
4H
45M
52S
Curso Pr谩ctico de SQL

Curso Pr谩ctico de SQL

Israel V谩zquez Morales

Israel V谩zquez Morales

Instalaci贸n de la BD de ejemplo

3/29

Lectura

Como requisito previo es necesario instalar la BD siguiendo este tutorial del curso de PostgreSQL.

...

Reg铆strate o inicia sesi贸n para leer el resto del contenido.

Aportes 86

Preguntas 66

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Si no quereis instalar postgreSQL en vuestro equipo, podeis usar Docker-compose con el siguiente c贸digo para levantar contenedores con PostgreSQL y pgAdmin de forma muy r谩pida:

version: "3.7"
services:
db:
image: postgres:12.2
restart: always
environment:
POSTGRES_DB: postgres
POSTGRES_USER: admin
POSTGRES_PASSWORD: secret
PGDATA: /var/lib/postgresql/data
volumes:
- db-data:/var/lib/postgresql/data
ports:
- "5432:5432"
 
pgadmin:
image: dpage/pgadmin4:4.18
restart: always
environment:
PGADMIN_DEFAULT_EMAIL: admin@linuxhint.com
PGADMIN_DEFAULT_PASSWORD: secret
PGADMIN_LISTEN_PORT: 80
ports:
- "8080:80"
volumes:
- pgadmin-data:/var/lib/pgadmin
links:
- "db:pgsql-server"
volumes:
db-data:
pgadmin-data:

Si ten茅is dudas, ten茅is las instrucciones completas en este tutorial: https://linuxhint.com/postgresql_docker/ y seguro que el curso de docker os vendr谩 genial!

Una alternativa que uso a pgadmin es DBeaver. https://dbeaver.io/.

Es muy practico por que permite gestionar tambien mariaDB, MySQL, MS-SQL, oracle y otros.

Para crear el SCHEMA platzi pueden ejecutar el siguiente comando en SQL shell:

CREATE DATABASE pruebas;

y despu茅s:

CREATE SCHEMA platzi;

Para Crear las Tablas en Microsoft SLQ Server Management Studio, los campos de Fecha (TIMESTAMP) se crean con DATETIME, el campo Boolean, se crea con BIT.

Se puede seguir el curso usando MySQL Workbench?

Si quieren utilizar docker y no instalar nada en su computadora o aprender algo de docker, cree en tu tutorial que les ser谩 de gran ayuda, este es el enlace. 馃槂 espero les sirva.

Para los que quiera usar docker

Estructura de archivos:

鈹溾攢鈹 docker-compose.yml
鈹溾攢鈹 dump
鈹   鈹溾攢鈹 platzi.alumnos.sql
鈹   鈹斺攢鈹 platzi.carreras.sql
鈹斺攢鈹 env
    鈹溾攢鈹 pgadmin
    鈹斺攢鈹 postgres

docker-compose.yml

version: "3.9"

services:
  postgres:
    image: postgres:13
    container_name: psql
    volumes:
      - "./dump/:/docker-entrypoint-initdb.d/"
      - "db-data:/var/lib/postgresql/data"
    env_file:
      - ./env/postgres
    ports:
      - "5432:5432"

  pgadmin:
    image: dpage/pgadmin4
    container_name: pgadmin
    ports:
      - "5050:80"
    env_file:
      - ./env/pgadmin
    volumes:
      - "pgadmin-data:/var/lib/pgadmin"

volumes:
  db-data:
  pgadmin-data:

./env/postgres

POSTGRES_PASSWORD=passw0rd
POSTGRES_USER=platzi
POSTGRES_DB=test

./env/pgadmin

PGADMIN_DEFAULT_EMAIL[email protected]
PGADMIN_DEFAULT_PASSWORD=pgadmin

Paso 1: Primero hay que crear un archivo para crear el esquema

echo"CREATE SCHEMA platzi;" > dump/1-schema.sql

Paso 2: Corremos PostgreSQL, PGAdmin4 y se cargan los archivos SQL que estan en la carpeta dump (Los archivos se cargan en orden alfabetico por eso el archivo que creamos tiene el numero 1, para que cargue antes de crear las tablas)

docker-compose up -d

Paso 3: PGAdmin estara corriendo en localhost:5050 o 127.0.0.1:5050
Paso 3.1: ingresamos con el email y password definidos en ./env/pgadmin
Paso 3.2: Agregamos un nuevo servidor (El hostname es el nombre de nuestro contenedor definido en docker-compose.yml (psql en nuesto caso)
Paso 3.3: Continuar con el curso, ya esta el schema, las tablas y los datos cargados
Paso 4: Si quiere usar postgres desde la terminal

docker exec -ti psql psql -U platzi -d test
<h3>Notas:</h3>

Para los que quieran saber como es que se cargan los archivos SQL y saben un poco de bash y docker pueden ver el entrypoint, de hecho tambien se puede pasar un archivo *.sql, *.sql.gz, *.sql.xz y *.sh
Pueden iniciar todo con un script como el sigiente

#!/usr/bin/env bash
psql -U $POSTGRES_USER -d $POSTGRES_DB  <<-EOSQL
-- YOUR SQL Statements here
EOSQL

Es motivador seguir paso a paso y que funcione, bien!!!

Me perd铆

Me cost贸 un poco de trabajo sincronizar postgresql con pgadmin en Archlinux, pero lo logr茅 馃槃

Practicando es la mejor forma de aprender 馃槃

Ejecutando el archivo en la base de datos por la consola

psql -U usuario -d platzi -f platzi.carreras.sql 
psql -U usuario -d platzi -f platzi.alumnos.sql 

cuando le doy a drive me salen los archivos por un momento pero luego no se visulizan los archivos de drive

Si usas una distribuci贸n de Arch Linux como Manjaro, puedes seguir este sencillo procedimiento para la instalaci贸n.

No tienes que usar yay, puedes usar pacman

sudo pacman -Sy postgresql postgresql-docs postgresql-libs pgadmin4

Al momento de ejecutar los scripts a mi me sale el siguiente error

Cannot insert an explicit value into a timestamp column. Use INSERT with a column list to exclude the timestamp column, or insert a DEFAULT into the timestamp column.

Alguna idea de como puedo solucionarlo?

La soluci贸n para el error

ERROR: schema 鈥減latzi鈥 does not exist
LINE 1: create table platzi.alumnos (
^
SQL state: 3F000
Character: 14

siplemente hay que revisar que el nombre del Schema sea el mismo que mensionado en el scrip:
Ejemplo: schema = colocarnombredeschema

CREATE TABLE colocarnombredeschema.carreras (
id INT,
carrera VARCHAR(100),
fecha_alta TIMESTAMP,
vigente BOOLEAN
);

Eso significa que se volver谩 a utilizar MySQL Workbench?

Este tipo de cursos los tienen que actualizar cada ciertos meses la plataforma de PgSQL cambio totalmente, tiene que ser mas detallado todo, este curso se grabo hace a帽os, el mismo PgSQL ya no es el mismo como el que aparece en las capturas, muy mal, p茅simo es en el curso que mas me he tardado en hacer la instalaci贸n de un simple programa. Ni siquiera MySQL fue tanto rollo como esto.

les comparto una docker-compose y que la informacion sea perduradera tanto en la BD como en Pg admin para que no se tenga que crear la conex贸n cada de que hacemos el up de los servicios

primero debemos crear los dos volumes para nuestros servicios

 docker volume create bdsql  && docker volume create pgdata

le ingresamos permisos a estos objetos, ya que por alg煤n motivo falla cuando los servicios intentan escribir en estos

sudo  chmod 776 bdsql
sudo chmod 776 pgdata

y por ultimo activamos nuestro docker-compose-yml

version: "2.5"
services:
    db:
        image: postgres
        restart: always
        container_name: database
        ports:
            - "5432:5432"
        environment:
            POSTGRES_USER: root
            POSTGRES_PASSWORD: root
            POSTGRES_DB: pgdb
        volumes:
         # - .:/bdsql
                - ./bdsql:/var/lib/postgresql/data/
        networks:
          - bd-net
    pgadmin:
        container_name: pgadmin4_container
        image: dpage/pgadmin4
        restart: always
        environment:
            PGADMIN_DEFAULT_EMAIL: [email protected]
            PGADMIN_DEFAULT_PASSWORD: root
        ports:
            - "5050:80"
        volumes:
           - ./pgdata:/var/lib/pgadmin/
        networks:
          - bd-net
networks:
   bd-net:

y cada que iniciamos tendremos nuestra data lista para seguir practicando

Us茅 SQL Server 2019 al momento de empezar este curso. Lo que hice fue lo siguiente:

  1. Anticlic en Databases y crear nueva Database. (Le puse de nombre prueba).
  2. Clic en + en Pruebas, luego clic en + en Security, anticlic en New Schema y agregar el nombre del Schema.
  3. Abrir los archivos .sql del curso.
  4. Cambiar la base de datos donde va a correr la Consulta (Query) a la que vamos a trabajar 鈥淧RUEBA鈥.
  5. En platzi Alumnos.sql, cambiar TIMESTAMP por DATETIME. Luego, Ejecutar.
  6. En platzi Carreras.sql cambiar TIMESTAMP por DATETIME y Boolean por BIT, adem谩s, agregar comillas a TRUE o FALSE, de manera que ese espacio sea 鈥楾RUE鈥 o 鈥楩ALSE鈥. Luego, Ejecutar.

En caso se olviden de cambiar Timestamp y se ha creado ya la tabla, la pueden eliminar y realizar la misma consulta haciendo el cambio del tipo de dato.

Para poder trabajar con 鈥楳ySQL Workbench鈥 primero creamos el Schema 鈥榩latzi鈥 ejecutando en Workbench
CREATE SCHEMAplatzidefault character SET utf8;

Posteriormente ya podemos cargar y ejecutar los archivos los archivos 鈥榩latzi.alumnos.sql鈥 y 鈥榩latzi.carreras.sql鈥 que se encuentran en la descipci贸n de la clase.

Sigan el paso a paso, a mi me funcion貌 todo a la perfecci貌n.

Go!

Hola, las tablas existen y tienen los datos cargados pero al buscar dentro de la base de datos 鈥減latzi鈥 no hay ninguna relaci贸n , 驴 por que pasa esto?

Para instalar pgAdmin en Debian y derivados (yo uso Kali-Linux Rolling), fu铆 a la p谩gina de documentaci贸n oficial: https://www.pgadmin.org/download/pgadmin-4-apt/ ;
Resulta que el segundo enlace est谩 defectuoso (el 鈥渦pdate鈥 no fetchea bien las actualizaciones). Encontr茅 este tutorial que (creo) puede servirle a algunos:
https://www.youtube.com/watch?v=L2eGwlkRRJ8 ;

Si no quieren instalar de forma local PostgreSQL pueden usar Heroku de forma gratuita, agregar la base de datos a su aplicaci贸n y listo.
Como cliente les recomiendo Postico 贸 BeeKeeper en la versi贸n Community que es gratis.

Para crear el schema deben ejecutar la query:

create schema platzi authorization tuUsuario;

Eligiendo el usuario que les da la heroku de su base de datos.

Arrastran el archivo SQL de alumnos al editor de beekeepero, seleccionan todo el texto y lo ejecutan y listo.

Si alguno tambi茅n le daba error a la hora de crear las tablas por el 鈥減latzi.鈥 (porque el query se creo dentro del shema). Les recomiendo abrir el archivo de 鈥渁lumnos鈥 y 鈥渃arrera鈥 con el blog de notas, copiamos el contenido

Abrimos word y pegamos. Usamos 鈥淐trl + L鈥 y remplazamos 鈥減latzi.鈥 por 鈥(el segundo espacio no debe contener nada)鈥.

Luego de remplazar pegamos el resultado en nuestro blog de notas y guardamos. Esto ya nos dar谩 error

Espero que les sirva a las personas que tuvieron el mismo problema que yo 馃懢

P茅sima herramienta PGAdmin, a la mayor铆a les presenta problemas y no dan soluci贸n alguna鈥 Llevo horas tratando de hacer que funcione sin tener 茅xito.

Hola, compa帽eros ya he reportado el problema de descarga de archivos en Drive, me comentaron que ya el equipo de educacion trabaja en solventar el problema y me notificaran.

Donde esta el archivo platzi.alumnos.sql

Esta vez fue bastante sencillo! Justo por estas fechas hace un a帽o PostgreSQL se me dificultaba mucho!

隆Todo listo para comenzar!

En Ubuntu es necesario establecer la contrase帽a para crear el servidor:

$ sudo -u postgres psql

postgres=# ALTER USER postgres PASSWORD 'newPassword';```

Alguien que lo est茅 haciendo con Docker? tuve problemas para instalar, y como quiero seguir viendo esto, decid铆 hacerlo con docker, agregu茅 manualmente los archivos a la bd ya creada, digo, no tarde mucho, pero no se si habr铆a una manera de agregar archivos .sql directamente con psql ?

Listo, tuve que hacer pasos adicionales por un par de errores en la instalaci贸n en Mac OS 11.2, pero lo pude solucionar.

boi a ser lo ke mense帽贸 el profe beco

Pefecto!, ahora a seguir adelante con el curso!

Muy bien, continuemos鈥

Para usuarios de linux le recomiendo ver este v铆deo para instalar Postgres LINK

existe alguna otra alternativa a pg Admin 4?

todo perfecto ! ahora gogogo

Que genial que se siente hacer todo como est谩 esperado en la m谩quina.

Intentar茅 hacerlo con el SQL, por lo visto solo cambiaron algunos tipos de datos que se agregan de manera distinta.

Hecho, sigan el paso a paso, todo muy bien explicado.

pregunta hay alguna forma de poder dockerizar postgres para no tener que instalarlo en el equipo?

Me gust贸 que prefiera usar la interfaz de Postegres

Muy bueno el tutorial!

listo PostgreSQL instalado鈥

MySQL ya acepta VScode como administrador de bases de datos <https://dev.mysql.com/>
Necesito saber como descargar eso para continuar SQL o pgAdmin
Alguien me ayuda en como se cual es mi usuario de PostgreSQL?

Todo maravilloso, pasos realizados y a por el reto de este curso.

Instalado todo y cargadas las BD sin problemas.

Saludos, desde ya iniciando y botando el herrumbre.

Pues usare MSSQLS haber que tal me va

Aqui vamos

gosh tuve demasiados errores dos dias instalando pero ya, debido a que ya lo habia instalado antes y luego lo des instale

aqu铆 vamos de nuevo

Se instal贸 correctamente


Para crear la base de datos, escribir en el navegador: 鈥淪QL SHEEL鈥 Y despues de dar enter varias veces hasta tener que escribir la contrase帽a; escribir el siguiente comando: "CREATE DATABASE prueba; "

Hola, me costo un poco poder entender que tenia que crear un servidor en PGAdmin4 para conectarlo con la Database que cree en la consola.

si a alguien le sirve asi llene la tablita para que me funcionara la creacion del Server en PGAdmin4.
Previamente use

\password

en la consola de pqsl para crear la contrase帽a, para usar en la conexion al servidor desde PGAdmin4 y voil谩!

Tuve que modificar los archivos yo mismo para hacerlos correr sin errores en SQL Server Management Studio pero rompiendo el c贸digo y volviendolo a escribir el aprendizaje fue mayor. Ejemplo, no conoc铆a el Data Type Boolean ni que el equivalente en SQL Server es BIT.

Excelente guua para instalar la base de datos.

Insertar bases de datos y tablas desde ubuntu

Primero se accede desde la consola a postgres

psql -h localhost -p 5432 -U usuario_de_cada_uno

Les pide la contrase帽a por consola e ingresan
Ahi se crea la base de datos

CREATE DATABASE pruebas;

Usando

\l

Pueden verificar que su base haya sido creada
Despues deben ingresar dentro de esa base

\c pruebas

Y ahi si se crea el esquema

CREATE SCHEMA platzi;

Una vez creado el esquema se descargan los archivos platzi-alumnos.sql y platzi-carreras.sql y se guarda la ruta donde quedo cada archivo

Salen con exit
y desde la consola original se pone esto

psql -U nombre_del_usuario -d pruebas -h localhost < ruta_donde_se_guardo/platzi-alumnos.sql
psql -U nombre_del_usuario -d pruebas -h localhost < ruta_donde_se_guardo/platzi-carreras.sql

Ahi debe mostrar que se han insertado los datos.

Para los que quieran usar docker y dbeaver:

Docker pull postgres
docker run -p 49165:5432 --name postgres -e POSTGRES_PASSWORD=mysecretpassword -d postgres

-p: Puerto 49165 para nuestro local y 5432 puerto determinado de postgres.
鈥攏ame: Nombre del contenedor
-e: set environment variable en este caso la contrase帽a.
-d: detached mode

  1. En Dbeaver:
    host: localhost
    port: 49165
    Database: postgres
    Username: postgres
    Password: mysecretpassword
    Test connection
  2. Crea el esquema platzi.
  3. Ejecuta los scripts.

para fedora se los dejo

sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/F-36-x86_64/pgdg-fedora-repo-latest.noarch.rpm
sudo dnf install -y postgresql14-server
sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
sudo systemctl enable postgresql-14
sudo systemctl start postgresql-14

Pueden instalar PostgreSQL en linux siguiendo este tutorial.
https://www.youtube.com/watch?v=40uGNsi7ysc

El curso tiene un buen comienzo, pues, las bases de datos son extensas y podremos tener buenos ejemplos pr谩cticos para seguir el hilo del curso.

En mi caso salieron varios errores a instalar el pg con la v 12 y 13, asi que opt茅 por usar Big query, es bastante sencillo y r谩pido, solo se debe convertir los archivos sql a csv para poder cargarlos

Pareciera ca铆do el drive con los archivos Sql, si alguien me los puede facilitar se lo agradecer铆a mucho.

Listo, segu铆 la gu铆a y no tengo problema alguno, vamos a comenzar !!!

Producto Cartesiano A*B, Diferencia A-B, Uni贸n: AUB

si les sale error al a帽adir query, modifiquen los siguiente

id INT, - debe ser - id INT ,

deben de darle un espacio a la coma

Si tuvieron problemas instalando pgadmin4 en ubuntu 20.04 a mi me ayudo el siguiente tutorial: https://www.youtube.com/watch?v=lX9uMCSqqko&ab_channel=codingpub360

una opcion tambien es phpMyadmin

EXCELENTE MATERIAL

He seguidos todos los pasos y sin problema! muchas gracias 馃, continuamos 馃槅

Todo listo para continuar, instale version 12 y todo bn.

Buen d铆a,

Quise realizar el ejercicio son MS Sequal Server pero como las consultas entre Postgre y MS Sequal Server son distintas, no se que ajuste realizar al archivo platzi.alumnos para que el Query sea exitoso.

驴Alguien me puede ayudar?

Actualmente estoy usando la version 9.2 de postgreSQL para un trabajo, yo puedo instalar dos versiones (para instalar la 12) en un mismo equipo?

Go Ahead!!

Todo listo 馃槂

Vamos!!

perfect, lets go!! 馃槂