The Increment() methods reduce the value of a
given key if the corresponding value can be parsed to an integer
value. These operations are provided at a protocol level to
eliminate the need to get, update, and reset a simple integer
value in the database. All the .NET Client Library methods support
the use of an explicit offset value that will be used to reduce
the stored value in the database. Note that the
Increment methods may not be used with keys
that were first created with a Store method. To
initialize a counter, you must first use either
Increment or Increment with
a default value.
| API Call | object.Increment(key, defaultvalue, offset) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | CasResult<ulong> (
Cas result of bool
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist.
client.Remove("inventory"); //reset the counter client.Increment("inventory", 100, 1); //counter will be 100 client.Increment("inventory", 100, 1); //counter will be 101
| API Call | object.Increment(key, defaultvalue, offset, validfor) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | CasResult<ulong> (
Cas result of bool
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
TimeSpan validfor | Expiry time (in seconds) for key | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist and set an expiry of 60 seconds.
client.Increment("inventory", 100, 1, TimeSpan.FromSeconds(60));| API Call | object.Increment(key, defaultvalue, offset, expiresat) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | CasResult<ulong> (
Cas result of bool
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
DateTime expiresat | Explicit expiry time for key | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist and set an expiry of 5 minutes.
client.Increment("inventory", 100, 1, DateTime.Now.AddMinutes(5));| API Call | object.Increment(key, defaultvalue, offset, casunique) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | CasResult<ulong> (
Cas result of bool
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
ulong casunique | Unique value used to verify a key/value combination | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist. Fail if CAS value doesn't match CAS value on server.
var result = client.ExecuteGet("inventory"); client.Increment("inventory", 100, 1, result.Cas);
| API Call | object.Increment(key, defaultvalue, offset, validfor, casunique) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | CasResult<ulong> (
Cas result of bool
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
TimeSpan validfor | Expiry time (in seconds) for key | ||
ulong casunique | Unique value used to verify a key/value combination | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist and set an expiry of 60 seconds. Fail if CAS value doesn't match CAS value on server.
var result = client.ExecuteGet("inventory"); client.Increment("inventory", 100, 1, TimeSpan.FromSeconds(60), result.Cas);
| API Call | object.Increment(key, defaultvalue, offset, expiresat, casunique) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | CasResult<ulong> (
Cas result of bool
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
DateTime expiresat | Explicit expiry time for key | ||
ulong casunique | Unique value used to verify a key/value combination | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist and set an expiry of 5 minutes. Fail if CAS value doesn't match CAS value on server.
var result = client.ExecuteGet("inventory"); client.Increment("inventory", 100, 1, DateTime.Now.AddMinutes(5), result.Cas);
| API Call | object.ExecuteIncrement(key, defaultvalue, offset) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | IMutateOperationResult (
Mutate operation result
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
ExecuteIncrement will return an instance of an
IMutateOperationResult
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist.
client.Remove("inventory"); //reset the counter client.ExecuteIncrement("inventory", 100, 1); //counter will be 100 var result = client.ExecuteIncrement("inventory", 100, 1); //counter will be 101 if (! result.Success) { Console.WriteLine("Increment failed with message {0} and status code {1}", result.Message, result.StatusCode); if (result.Exception != null) { throw result.Exception; } }
| API Call | object.ExecuteIncrement(key, defaultvalue, offset, validfor) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | IMutateOperationResult (
Mutate operation result
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
TimeSpan validfor | Expiry time (in seconds) for key | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist and set an expiry of 60 seconds.
client.ExecuteIncrement("inventory", 100, 1, TimeSpan.FromSeconds(60));| API Call | object.ExecuteIncrement(key, defaultvalue, offset, expiresat) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | IMutateOperationResult (
Mutate operation result
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
DateTime expiresat | Explicit expiry time for key | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist and set an expiry of 5 minutes.
client.ExecuteIncrement("inventory", 100, 1, DateTime.Now.AddMinutes(5));| API Call | object.ExecuteIncrement(key, defaultvalue, offset, casunique) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | IMutateOperationResult (
Mutate operation result
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
ulong casunique | Unique value used to verify a key/value combination | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist. Fail if CAS value doesn't match CAS value on server.
var result = client.ExecuteGet("inventory"); client.ExecuteIncrement("inventory", 100, 1, result.Cas);
| API Call | object.ExecuteIncrement(key, defaultvalue, offset, validfor, casunique) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | IMutateOperationResult (
Mutate operation result
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
TimeSpan validfor | Expiry time (in seconds) for key | ||
ulong casunique | Unique value used to verify a key/value combination | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist and set an expiry of 60 seconds. Fail if CAS value doesn't match CAS value on server.
var result = client.ExecuteGet("inventory"); client.ExecuteIncrement("inventory", 100, 1, TimeSpan.FromSeconds(60), result.Cas);
| API Call | object.ExecuteIncrement(key, defaultvalue, offset, expiresat, casunique) | ||
| Asynchronous | no | ||
| Description | Increment the value of an existing numeric key. Couchbase Server stores numbers as unsigned numbers, therefore if you try to increment an existing negative number, it will cause an integer overflow and return a non-logical numeric result. If a key does not exist, this method will initialize it with the zero or a specified value. | ||
| Returns | IMutateOperationResult (
Mutate operation result
) | ||
| Arguments | |||
string key | Document ID used to identify the value | ||
object defaultvalue | Value to be stored if key does not already exist | ||
Integer offset | Integer offset value to increment/decrement (default 1) | ||
DateTime expiresat | Explicit expiry time for key | ||
ulong casunique | Unique value used to verify a key/value combination | ||
Increment the inventory counter by 1, defaulting to 100 if the key doesn't exist and set an expiry of 5 minutes. Fail if CAS value doesn't match CAS value on server.
var result = client.ExecuteGet("inventory"); client.ExecuteIncrement("inventory", 100, 1, DateTime.Now.AddMinutes(5), result.Cas);