Odczyt danych z bazy danych
W tym ćwiczeniu pobierzesz dane przechowywane w tabelach lokalnej bazy danych PostgreSQL. Wykorzystasz przykładową bazę danych Pagila – fikcyjną bazę sklepu z płytami DVD, często stosowaną w materiałach edukacyjnych.
Stworzysz i użyjesz funkcji, która pobiera tabelę z bazy danych do obiektu pandas DataFrame. Tabele, które będziesz pobierać, to:
film: filmy dostępne do wypożyczenia w sklepie DVD.customer: klienci, którzy wypożyczali filmy w sklepie DVD.
Aby połączyć się z bazą danych, musisz użyć URI połączenia PostgreSQL, które wygląda mniej więcej tak:
postgresql://[user[:password]@][host][:port][/database]
To ćwiczenie jest częścią kursu
Wprowadzenie do inżynierii danych
Instrukcje do ćwiczenia
- Uzupełnij definicję funkcji
extract_table_to_pandas(), dodając argumenttablenamewewnątrz zapytania. - Wypełnij URI połączenia. Nazwa użytkownika to
repl, hasło topassword, host tolocalhost, a port to5432. Baza danych nosi nazwępagila. - Uzupełnij wywołania funkcji
extract_table_to_pandas(), aby pobrać tabele film i customer.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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)