Sqlite

DBA 對“批處理”的定義是什麼?

  • February 26, 2022

我聽說它有時與 SQLite 相關,但從未完全理解它的含義。

批處理是一次發送到數據庫伺服器的一系列 SQL 命令。這比單獨發送每個命令要快,因為網路通信較少。

SQLite 是一個嵌入式數據庫;SQL 命令由 SQLite 庫直接執行。沒有單獨的伺服器,所以有批次是沒有意義的。SQLite 沒有這樣的批次。


“批處理”的另一個含義可能是 INSERT 命令的多行形式:

INSERT INTO MyTable(ID, Name) VALUES (1, 'this'), (2, 'that'), (3, 'whatever');

“批次”通常是動詞,但也可能是名詞。通常,批處理結果的技術術語是*“事務”。*而且,通常情況下,“批處理”是為了繞過帶有回滾點的過多送出,或者需要記憶體或鎖定以進行很長時間的修改。

如果在寫入數據庫之外的上下文中使用,則可以說您正在批處理“作業”(作為批處理中的工作單元)。但是,在數據庫中,工作單元通常是DML 語句,而這些語句從不稱為作業。

有關更多資訊,另請參閱批處理(維基百科)

引用自:https://dba.stackexchange.com/questions/222395