你的第一個資料庫

SQL 關聯式資料庫入門

Timo Grossenbacher

Data Journalist

調查瑞士的大學

教授的互動視覺化

資料庫綱要

SQL 關聯式資料庫入門

關聯式資料庫:

  • 真實的「實體」變成「資料表」
  • 降低重複
  • 以「關聯」確保資料完整性
  • 例如:professorsuniversitiescompanies
  • 例如:companies 中「Credit Suisse」只有一筆
  • 例如:一位 professor 可任職多所 universities 與多間 companies,一間 company 也可聘用多位 professors
SQL 關聯式資料庫入門

在本課程中你將:

  • 使用我調查所用的資料
  • 從零建立一個關聯式資料庫
  • 學三個概念:
    • 約束(constraints)
    • 鍵(keys)
    • 參考完整性(referential integrity)

你需要:具備 SQL 基礎,可參考 Introduction to SQL

SQL 關聯式資料庫入門

第一件事:看看這個 PostgreSQL 資料庫

SELECT table_schema, table_name 
FROM information_schema.tables;
    table_schema    |              table_name
 -------------------+------------------------------
 pg_catalog         | pg_statistic
 pg_catalog         | pg_type
 pg_catalog         | pg_policy
 pg_catalog         | pg_authid
 pg_catalog         | pg_shadow
 public             | university_professors
 pg_catalog         | pg_settings
...
SQL 關聯式資料庫入門

查看特定資料表的欄位

SELECT table_name, column_name, data_type
FROM information_schema.columns 
WHERE table_name = 'pg_config';
 table_name | column_name | data_type
 -----------+-------------+-----------
 pg_config  | name        | text
 pg_config  | setting     | text
SQL 關聯式資料庫入門

一起來練習吧。

SQL 關聯式資料庫入門

Preparing Video For Download...