Navicat 部落格

關聯式資料庫交易中的物件鎖定 - 第 2 部分 2021 年 6 月 16 日,由 Robert Gravelle 撰寫

封閉式與開放式鎖定

關聯式資料庫系統(RDBMS)在修改(例如,更新或删除)資料表記錄時採用各種鎖定策略來強制執行交易 ACID 特性。有時,當兩個並行交易都在等待對方釋放鎖定而無法進行時,可能會發生死結。在本系列的第 1 部分中,我們知道了什麼是關聯式資料庫中的物件鎖定、不同類型的鎖定和死結。在本篇後續文章中,我們將比較封閉式和開放式鎖定的利弊。

關聯式資料庫交易中的物件鎖定 2021 年 6 月 8 日,由 Robert Gravelle 撰寫

第 1 部分:概覽、鎖定資料粒度和死結

最近,我們有一些關於資料庫交易的文章,有關強制執行四個 ACID 特性(原子性、一致性、隔離性、持久性)。在今天的文章中,我們將研究關聯式資料庫(RDBMS)用於強制 ACID 特性的另一種機制,即物件鎖定。具體來說,我們將了解它是什麼,它在 RDBMS 交易中扮演什麼角色,以及鎖定可能造成的一些副作用。雖然資料庫物件鎖定可能是一個相當技術性和複雜的題目,但我們會以淺白的用語解釋它,並盡可能保持簡單易明。

DBeaver 與 Navicat – 第 2 部分 2021 年 6 月 3 日,由 Robert Gravelle 撰寫

header_2 (29K)

DBeaver 和 Navicat 都是萬用資料庫工具,這意味著它們支援所有流行的資料庫,包括 MySQL、MariaDB、MongoDB、SQL Server、Oracle、PostgreSQL 和 SQLite。此外,兩者還與雲端資料庫相容,例如 Amazon RDS、Amazon Aurora、Amazon Redshift、Microsoft Azure、Oracle Cloud、Google Cloud 和 MongoDB Atlas。但是,正如俗話說「細節決定成敗」,因此,雖然這兩個產品乍一看似乎相似,但仔細研究兩個工具的視覺感染力、安全連線能力和 NoSQL 支援就會發現它們之間的差異數量遠遠超過任何明顯的相似之處。

DBeaver 與 Navicat:資料庫工具對決 2021 年 6 月 2 日,由 Robert Gravelle 撰寫

header (18K)

在我擔任 IT 顧問的早期,我依靠各種開源工具來完成我的工作。我的理由是省錢購買商業產品的成本。幾年後,我才意識到商業產品實際上可以透過簡化和自動化定期執行的許多常見工作來節省時間和金錢。

將 SQL COUNT() 函式與 GROUP BY 一起使用 2021 年 5 月 28 日,由 Robert Gravelle 撰寫

早在 2020 年 8 月,SQL Count() 函式的多種變體文章概述了 COUNT 的許多輸入參數變化。使用 COUNT() 函式的另一種方法是將其與 GROUP BY 子句一起使用。將 COUNT() 函式與 GROUP BY 結合使用,可以根據不同的分組來細分計數。在今天的文章中,我們將學習如何使用 Navicat Premium 作為資料庫用戶端査詢 Sakila 範例資料庫,根據不同的準則分組計數。

Navicat 文章
頻道記錄
分享
部落格封存檔