Ler de um banco de dados
Neste exercício, você extrairá dados que residem em tabelas de um banco de dados local do PostgreSQL. Os dados que você usará são o banco de dados de exemplo do Pagila. O banco de dados faz o backup de um aplicativo fictício da loja DVD, e os recursos educacionais costumam usá-lo como um banco de dados de exemplo.
Você criará e usará uma função que extrai uma tabela de banco de dados em um objeto pandas
DataFrame. As tabelas que você extrairá são:
film
: os filmes que são alugados na loja DVD.customer
: os clientes que alugaram filmes na loja DVD.
Para se conectar ao banco de dados, você terá de usar uma conexão do PostgreSQL URI , que tem a seguinte aparência:
postgresql://[user[:password]@][host][:port][/database]
Este exercício faz parte do curso
Introdução à engenharia de dados
Instruções de exercício
- Complete a definição da função
extract_table_to_pandas()
para incluir o argumentotablename
na consulta. - Preencha a conexão URI. O nome de usuário e a senha são
repl
epassword
, respectivamente. O host élocalhost
e a porta é5432
. O banco de dados épagila
. - Complete as chamadas de função do site
extract_table_to_pandas()
para extrair as tabelas de filmes e clientes.
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
# Function to extract table to a pandas DataFrame
def extract_table_to_pandas(tablename, db_engine):
query = "SELECT * FROM {}".format(____)
return pd.read_sql(query, db_engine)
# Connect to the database using the connection URI
connection_uri = "postgresql://____:____@____:____/____"
db_engine = sqlalchemy.create_engine(connection_uri)
# Extract the film table into a pandas DataFrame
extract_table_to_pandas("____", db_engine)
# Extract the customer table into a pandas DataFrame
extract_table_to_pandas("____", db_engine)