(mongodb >=1.4.0)
MongoDB\Driver\Manager::executeReadCommand — 執行讀取的資料庫命令
$db, MongoDB\Driver\Command $command, ?陣列 $options = null): MongoDB\Driver\Cursor根據 "readPreference" 選項選擇伺服器,並在該伺服器上執行指令。
此方法將套用特定於讀取指令的邏輯(例如 » distinct)。"readPreference" 和 "readConcern" 選項的預設值將從使用中交易(由 "session" 選項指示)推斷,然後再從 連線 URI 推斷。
db (字串)要執行指令的資料庫名稱。
command (MongoDB\Driver\Command)要執行的指令。
選項
| 選項名稱 | 類型 | 描述 |
|---|---|---|
| readConcern | MongoDB\Driver\ReadConcern |
套用於操作的讀取關注。 此選項在 MongoDB 3.2+ 中可用,如果為較舊的伺服器版本指定,則會在執行時導致例外。 |
| readPreference | MongoDB\Driver\ReadPreference |
用於選擇操作伺服器的讀取偏好設定。 |
| session | MongoDB\Driver\Session |
要與操作關聯的階段作業。 |
如果您正在使用具有進行中交易的 "session",則無法指定 "readConcern" 或 "writeConcern" 選項。這將導致拋出 MongoDB\Driver\Exception\InvalidArgumentException。相反地,您應該在使用 MongoDB\Driver\Session::startTransaction() 建立交易時設定這兩個選項。
成功時傳回 MongoDB\Driver\Cursor。
"session" 選項與具有進行中交易的關聯階段作業以及 "readConcern" 或 "writeConcern" 選項一起使用,則拋出 MongoDB\Driver\Exception\InvalidArgumentException。