翻译或纠错本页面
- Reference >
- mongo Shell Methods >
- Cursor Methods >
- cursor.addOption()
cursor.addOption()¶
说明¶
- cursor.addOption(flag)¶
注解
- Deprecated in the mongo Shell since v3.2
- Starting in v3.2, the cursor.addOption() operator is deprecated in the mongo shell. In the mongo shell, use available cursor methods instead.
添加 OP_QUERY 标记,和 tailable 标记相同,用于改变查询对象的行为。
The cursor.addOption() method has the following parameter:
Parameter Type Description flag flag OP_QUERY wire protocol flag. For the mongo shell, you can use the cursor flags listed below. For the driver-specific list, see your driver documentation.
Flags¶
The mongo shell provides several additional cursor flags to modify the behavior of the cursor.
Flag | Description |
---|---|
|
Sets the cursor not to close once the last data is received, allowing the query to continue returning data added after the initial results were exhausted. |
|
Allows querying of a replica slave. |
|
Prevents the server from timing out idle cursors. |
|
For use with .. data:: DBQuery.Option.tailable; sets the cursor to block and await data for a while rather than returning no data. The cursor will return no data once the timeout has expired. |
|
Sets the cursor to return all data returned by the query at once rather than splitting the results into batches. |
|
Sets the cursor to return partial data from a query against a sharded cluster in which some shards do not respond rather than throwing an error. |
Example¶
The following example adds the DBQuery.Option.tailable flag and the DBQuery.Option.awaitData flag to ensure that the query returns a tailable cursor. The sequence creates a cursor that will wait for few seconds after returning the full result set so that it can capture and return additional data added during the query:
var t = db.myCappedCollection;
var cursor = t.find().addOption(DBQuery.Option.tailable).
addOption(DBQuery.Option.awaitData)
警告
Adding incorrect wire protocol flags can cause problems and/or extra server load.