(mongodb >=1.0.0)
MongoDB\Driver\Server::executeCommand — Executa um comando de banco de dados neste servidor
$db
, MongoDB\Driver\Command $command
, array|MongoDB\Driver\ReadPreference|null $options
= null
): MongoDB\Driver\CursorExecuta o comando neste servidor.
Este método não aplica nenhuma lógica especial ao comando. Os
valores padrão para as opções "readPreference"
,
"readConcern"
e "writeConcern"
serão inferidos de uma transação ativa (indicada pela
opção "session"
). Se não houver nenhuma transação ativa, uma
preferência de leitura primária será usada para seleção do servidor.
Os valores padrão não serão inferidos do URI de conexão. Os usuários são, portanto, incentivados a usar métodos de comando específicos de leitura e/ou gravação, se possível.
Nota: A opção
"readPreference"
não controla o servidor ao qual o driver emite a operação; ela sempre será executada neste objeto servidor. Em vez disso, ela pode ser usada ao emitir a operação para um servidor secundário (de uma conexão de conjunto de réplicas, não autônomas) ou nós mongo para garantir que o driver defina o protocolo de conexão de acordo ou adicione a preferência de leitura à operação, respectivamente.
db
(string)O nome do banco de dados no qual executar o comando.
command
(MongoDB\Driver\Command)O comando a ser executado.
options
Opção | Tipo | Descrição |
---|---|---|
readConcern | MongoDB\Driver\ReadConcern |
Um read concern a ser aplicado à operação. Esta opção está disponível no MongoDB 3.2+ e resultará em uma exceção em tempo de execução se for especificada para uma versão de servidor mais antiga. |
readPreference | MongoDB\Driver\ReadPreference |
Uma preferência de leitura a ser usada para selecionar um servidor para a operação. |
session | MongoDB\Driver\Session |
Uma sessão para associar à operação. |
writeConcern | MongoDB\Driver\WriteConcern |
Um write concern a ser aplicado à operação. |
Se uma "session"
que tem uma transação em andamento
estiver sendo usada, uma opção "readConcern"
ou
"writeConcern"
não pode ser especificada. Isso resultará em uma
exceção MongoDB\Driver\Exception\InvalidArgumentException
sendo lançada. Em vez disso, essas duas opções devem ser definidas ao criar
a transação com
MongoDB\Driver\Session::startTransaction().
Retorna MongoDB\Driver\Cursor em caso de sucesso.
"session"
for usada com uma transação associada em combinação com uma opção "readConcern"
ou "writeConcern"
."session"
for usada em combinação com um write concern não confirmado.
Versão | Descrição |
---|---|
PECL mongodb 1.4.4 |
MongoDB\Driver\Exception\InvalidArgumentException
será lançada se a opção "session" for usada em
combinação com uma preocupação de gravação não reconhecida.
|
PECL mongodb 1.4.0 |
O terceiro parâmetro agora é um array options .
Para compatibilidade com versões anteriores, esse parâmetro ainda aceitará
um objeto MongoDB\Driver\ReadPreference.
|
Nota: É responsabilidade do invocador garantir que o servidor seja capaz de executar a operação de escrita. Por exemplo, executar uma operação de escrita em um servidor secundário (excluindo seu banco de dados "local") falhará.