📄️ 其他資料類型
除了模型基礎指南中提到最常見的資料類型外,Sequelize 還提供其他幾種資料類型。
📄️ 在 AWS Lambda 中使用 sequelize
AWS Lambda 是一種無伺服器運算服務,可讓客戶
📄️ 連線池
如果您從單一程序連線到資料庫,則應只建立一個 Sequelize 實例。Sequelize 會在初始化時設定連線池。此連線池可以透過建構函式的 options 參數 (使用 options.pool) 進行設定,如下列範例所示
📄️ 約束與循環相依
在表格之間新增約束表示,當使用 sequelize.sync 時,表格必須以特定的順序在資料庫中建立。如果 Task 有一個對 User 的參考,則必須先建立 User 表格,才能建立 Task 表格。這有時可能會導致循環參考,其中 Sequelize 無法找到同步的順序。想像一個文件和版本的場景。一個文件可以有多個版本,為了方便起見,一個文件會有對其目前版本的參考。
📄️ 方言專屬事項
底層連線器函式庫
📄️ 擴充資料類型
您嘗試實作的類型很可能已經包含在 DataTypes 中。如果未包含新的資料類型,本手冊將說明如何自行編寫。
📄️ 鉤子 (Hooks)
鉤子 (也稱為生命週期事件) 是在 sequelize 中執行呼叫之前和之後呼叫的函式。例如,如果您想在儲存模型之前始終設定一個值,您可以新增一個 beforeUpdate 鉤子。
📄️ 索引
Sequelize 支援將索引新增至模型定義,這些索引將在 sequelize.sync() 上建立。
📄️ 使用舊有表格
雖然開箱即用的 Sequelize 看起來有點固執己見,但是透過定義 (否則會產生) 表格和欄位名稱,可以輕鬆使用舊有表格並使您的應用程式能夠向前兼容。
📄️ 法律聲明
授權
📄️ 遷移
就像您使用 Git 等版本控制系統來管理原始碼中的變更一樣,您可以使用遷移來追蹤資料庫的變更。透過遷移,您可以將現有的資料庫轉換為另一種狀態,反之亦然:這些狀態轉換會儲存在遷移檔案中,這些檔案描述如何到達新的狀態以及如何還原變更以回到舊的狀態。
📄️ 命名策略
底線選項
📄️ 樂觀鎖定
Sequelize 內建支援透過模型實例版本計數進行樂觀鎖定。
📄️ 查詢介面
Sequelize 的實例使用一種稱為查詢介面的東西,以與方言無關的方式與資料庫進行通訊。您在本手冊中學習的大多數方法都是在查詢介面的幾個方法的幫助下實作的。
📄️ 讀取複製
Sequelize 支援讀取複製,也就是說,當您想要執行 SELECT 查詢時,可以連線到多個伺服器。當您執行讀取複製時,您會指定一個或多個伺服器作為讀取複本,並指定一個伺服器作為主要寫入器,該伺服器會處理所有寫入和更新,並將其傳播到複本 (請注意,實際的複製過程不是由 Sequelize 處理,而是應由資料庫後端設定)。
📄️ 資源
附加元件與外掛程式
📄️ 範圍
範圍用於協助您重複使用程式碼。您可以定義常用的查詢,指定 where、include、limit 等選項。
📄️ 子查詢
假設您有兩個模型,Post 和 Reaction,並且設定了一對多的關係,因此一篇文章有多個反應
📄️ 交易
Sequelize 預設不使用交易。但是,對於 Sequelize 的正式上線使用,您絕對應該將 Sequelize 設定為使用交易。
📄️ TypeScript
我們正在努力使 Sequelize 在 TypeScript 中易於使用。
📄️ 升級至 v6
Sequelize v6 是繼 v5 之後的下一個主要版本。以下是協助您升級的重大變更清單。