20230614 於台北恆毅 DB2 全日講座

# 雜項

  • 通俗 DB 構造
    • 像 DB2 或 Oracle 都有 tablespae 的構造
    • 不同 DB 的物理儲存方式略有不同
  • 不少 DB 有提供排程功能,但多數使用者傾向寫 shell,用作業系統排程管理
  • auto commit 了解下
  • 有趣的 check 語法

# DB 的 Page 單位

  • OLTP&OLAP
  • Columnar-based&Row-based
    • 最小查詢單位稱為 page,看看一個 DB page 是一筆 row 還是欄位,判斷它現在的模式屬於何種

# 如何使用 DB

跟 DB 交流的方法很多,如:

  1. 透過互動模式(進到 psql、db2)
  2. 直接下命令(優點是可以輸出文件),建議可以給 SQL 語句加雙引號避免跳掉
  3. 或提交 SQL 語法,例如 DB2 是:
    db2 -svtf *.sql
    # s 這個參數我記得是關於有錯是否終止?
    # t 這個參數是調用預設終止符為分號,有其他指令可以修改
  4. 應用程式或 API,可以透過 JDBC、ODBC 橋接
  5. Stored Procedure
  • 一般來說 DB 主機跟 AP 主機會是分開的,畢竟不希望因為程式問題導致記憶體溢位,影響 DB 運作
  • 但 DB 引擎內還是可以預存一些程式
  • 不過有人認為不要用 Stored Procedure

# 常見 DB 物件

  • Schema 識別符
aaaschema.bbbtable # Fully Qualified Name
  • Index:增進查詢效率
    • PK
    • 自訂索引
  • View:不會儲存資料的視圖
  • Constraint:約束,常見的有
    • Unique
    • References
  • Trigger
  • Partition