我正在嘗試將資料庫從 MsSQL 轉換為 MySQL。
對于 MsSQL 中存在的 Serializable 隔離級別,在 MySQL 中究竟應該如何進行事務配置?因為 MsSQL 關鍵字不起作用。
例子;
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE
GO
BEGIN TRANSACTION;
UPDATE table_name SET column1 = value1, column2 = value2, ...
WHERE 條件
GO
COMMIT TRANSACTION;
去
除了這個;在事務開始和提交之間對表的一行進行事務時,是否有基于行的鎖定功能?
例子;
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE 條件
// 僅用于條件的基于行的鎖定
如果默認禁用,我應該怎么做才能啟用它?
謝謝你。
uj5u.com熱心網友回復:
你在設定隔離級別后開始事務了嗎?它只會為下一個事務設定事務級別。您可以通過“SET SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE;”為所有會話設定它。如果您想在創建與資料庫服務器的連接期間執行此操作,您可以在連接字串的末尾添加“?sessionVariables=transaction_isolation='SERIALIZABLE'”。或者您可以在連接后立即執行一次“SET SESSION TRA...SERIALIZABLE”。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/412262.html
標籤:
