Menu Docs
Página inicial do Docs
/
Manual do MongoDB
/ /

insert

Nesta página

  • Resumo
  • Descrição
  • Exemplo
insert

Um evento insert ocorre quando uma operação adiciona documentos a uma collection.

Campo
Tipo
Descrição
_id
Documento

Um objeto BSON que serve como um identificador para o evento de fluxo de alterações. Este valor é utilizado como resumeToken para o parâmetro resumeAfter ao retomar um fluxo de alteração. O objeto _id tem o seguinte formulário:

{
"_data" : <BinData|hex string>
}

O tipo de _data depende das versões do MongoDB e, em alguns casos, da versão de compatibilidade de recursos (fCV) no momento da abertura ou retomada do fluxo de alterações. Consulte Tokens de currículo para obter a lista completa de _data tipos.

Para obter um exemplo de como retomar um fluxo de alterações por resumeToken, consulte Retomar um fluxo de alterações.

clusterTime
Timestamp

O carimbo de data/hora da entrada de registro opcional associada ao evento.

Todas as notificações de eventos do fluxo de alterações associadas a uma transação com vários documentos têm o mesmo valor clusterTime: a hora em que a transação foi confirmada.

Em clusters fragmentados, eventos com o mesmo clusterTime podem não estar relacionados à mesma transação. Alguns eventos não estão nem um pouco relacionados a uma transação.

Para identificar eventos para uma única transação, você pode usar a combinação de lsid e txnNumber no documento de eventos do fluxo de alterações.

collectionUUID
UUID

UUID identificando a coleção onde ocorreu a alteração.

Novidades na versão 6.0.

documentKey
documento

Documento que contém o valor _id do documento criado ou modificado pela operação CRUD.

Para coleções fragmentadas, este campo também exibe a chave de fragmentação completa do documento. O campo _id não se repete se já fizer parte da chave fragmentada.

fullDocument
documento

O documento criado pela operação.

Alterado na versão 6.0.

A partir do MongoDB 6.0, se você definir a opção changeStreamPreAndPostImages usando db.createCollection(), create ou collMod, o campo fullDocument mostrará o documento depois que ele foi inserido, substituído ou atualizado (o documento pós-imagem). fullDocument é sempre incluído para eventos insert.

lsid
documento

O identificador da sessão associada à transação.

Somente presente se a operação fizer parte de uma transação de vários documentos.

ns
documento

O namespace (banco de dados e/ou coleção) afetado pelo evento.

ns.coll
string

O nome da coleção onde o evento ocorreu.

ns.db
string

O nome do banco de dados onde ocorreu o evento.

operationType
string

O tipo de operação que os relatórios de notificação de alteração.

Retorna um valor de insert para estes eventos de alteração.

txnNumber
Número longo
wallTime

A data e hora do servidor da operação do banco de dados. wallTime difere de clusterTime em que clusterTime é um carimbo de data/hora obtido da entrada oplog associada ao evento de operação do banco de dados.

Novidades na versão 6.0.

O exemplo seguinte ilustra um evento insert:

{
"_id": { <Resume Token> },
"operationType": "insert",
"clusterTime": <Timestamp>,
"wallTime": <ISODate>,
"ns": {
"db": "engineering",
"coll": "users"
},
"documentKey": {
"userName": "alice123",
"_id": ObjectId("599af247bb69cd89961c986d")
},
"fullDocument": {
"_id": ObjectId("599af247bb69cd89961c986d"),
"userName": "alice123",
"name": "Alice"
}
}

O campo documentKey inclui o campo _id e userName . Isso indica que a collection engineering.users está fragmentada, com uma chave de shard em userName e _id.

O documento fullDocument representa a versão do documento no momento da inserção.

Voltar

dropIndexes