public class UpdateItemRequest extends AmazonWebServiceRequest implements java.io.Serializable
Edits an existing item's attributes, or adds a new item to the table if it does not already exist. You can put, delete, or add attribute values. You can also perform a conditional update on an existing item (insert a new attribute name-value pair if it doesn't exist, or replace an existing name-value pair if it has certain expected attribute values).
You can also return the item's attribute values in the same
UpdateItem
operation using the ReturnValues
parameter.
Constructor and Description |
---|
UpdateItemRequest()
Default constructor for UpdateItemRequest object.
|
UpdateItemRequest(java.lang.String tableName,
java.util.Map<java.lang.String,AttributeValue> key,
java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates)
Constructs a new UpdateItemRequest object.
|
UpdateItemRequest(java.lang.String tableName,
java.util.Map<java.lang.String,AttributeValue> key,
java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates,
ReturnValue returnValues)
Constructs a new UpdateItemRequest object.
|
UpdateItemRequest(java.lang.String tableName,
java.util.Map<java.lang.String,AttributeValue> key,
java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates,
java.lang.String returnValues)
Constructs a new UpdateItemRequest object.
|
Modifier and Type | Method and Description |
---|---|
UpdateItemRequest |
addAttributeUpdatesEntry(java.lang.String key,
AttributeValueUpdate value)
This is a legacy parameter.
|
UpdateItemRequest |
addExpectedEntry(java.lang.String key,
ExpectedAttributeValue value)
This is a legacy parameter.
|
UpdateItemRequest |
addExpressionAttributeNamesEntry(java.lang.String key,
java.lang.String value)
One or more substitution tokens for attribute names in an expression.
|
UpdateItemRequest |
addExpressionAttributeValuesEntry(java.lang.String key,
AttributeValue value)
One or more values that can be substituted in an expression.
|
UpdateItemRequest |
addKeyEntry(java.lang.String key,
AttributeValue value)
The primary key of the item to be updated.
|
UpdateItemRequest |
clearAttributeUpdatesEntries()
Removes all the entries added into AttributeUpdates.
|
UpdateItemRequest |
clearExpectedEntries()
Removes all the entries added into Expected.
|
UpdateItemRequest |
clearExpressionAttributeNamesEntries()
Removes all the entries added into ExpressionAttributeNames.
|
UpdateItemRequest |
clearExpressionAttributeValuesEntries()
Removes all the entries added into ExpressionAttributeValues.
|
UpdateItemRequest |
clearKeyEntries()
Removes all the entries added into Key.
|
boolean |
equals(java.lang.Object obj) |
java.util.Map<java.lang.String,AttributeValueUpdate> |
getAttributeUpdates()
This is a legacy parameter.
|
java.lang.String |
getConditionalOperator()
This is a legacy parameter.
|
java.lang.String |
getConditionExpression()
A condition that must be satisfied in order for a conditional update to
succeed.
|
java.util.Map<java.lang.String,ExpectedAttributeValue> |
getExpected()
This is a legacy parameter.
|
java.util.Map<java.lang.String,java.lang.String> |
getExpressionAttributeNames()
One or more substitution tokens for attribute names in an expression.
|
java.util.Map<java.lang.String,AttributeValue> |
getExpressionAttributeValues()
One or more values that can be substituted in an expression.
|
java.util.Map<java.lang.String,AttributeValue> |
getKey()
The primary key of the item to be updated.
|
java.lang.String |
getReturnConsumedCapacity()
Determines the level of detail about provisioned throughput consumption
that is returned in the response:
|
java.lang.String |
getReturnItemCollectionMetrics()
Determines whether item collection metrics are returned.
|
java.lang.String |
getReturnValues()
Use
ReturnValues if you want to get the item attributes as
they appear before or after they are updated. |
java.lang.String |
getTableName()
The name of the table containing the item to update.
|
java.lang.String |
getUpdateExpression()
An expression that defines one or more attributes to be updated, the
action to be performed on them, and new value(s) for them.
|
int |
hashCode() |
void |
setAttributeUpdates(java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates)
This is a legacy parameter.
|
void |
setConditionalOperator(ConditionalOperator conditionalOperator)
This is a legacy parameter.
|
void |
setConditionalOperator(java.lang.String conditionalOperator)
This is a legacy parameter.
|
void |
setConditionExpression(java.lang.String conditionExpression)
A condition that must be satisfied in order for a conditional update to
succeed.
|
void |
setExpected(java.util.Map<java.lang.String,ExpectedAttributeValue> expected)
This is a legacy parameter.
|
void |
setExpressionAttributeNames(java.util.Map<java.lang.String,java.lang.String> expressionAttributeNames)
One or more substitution tokens for attribute names in an expression.
|
void |
setExpressionAttributeValues(java.util.Map<java.lang.String,AttributeValue> expressionAttributeValues)
One or more values that can be substituted in an expression.
|
void |
setKey(java.util.Map<java.lang.String,AttributeValue> key)
The primary key of the item to be updated.
|
void |
setReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
Determines the level of detail about provisioned throughput consumption
that is returned in the response:
|
void |
setReturnConsumedCapacity(java.lang.String returnConsumedCapacity)
Determines the level of detail about provisioned throughput consumption
that is returned in the response:
|
void |
setReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
Determines whether item collection metrics are returned.
|
void |
setReturnItemCollectionMetrics(java.lang.String returnItemCollectionMetrics)
Determines whether item collection metrics are returned.
|
void |
setReturnValues(ReturnValue returnValues)
Use
ReturnValues if you want to get the item attributes as
they appear before or after they are updated. |
void |
setReturnValues(java.lang.String returnValues)
Use
ReturnValues if you want to get the item attributes as
they appear before or after they are updated. |
void |
setTableName(java.lang.String tableName)
The name of the table containing the item to update.
|
void |
setUpdateExpression(java.lang.String updateExpression)
An expression that defines one or more attributes to be updated, the
action to be performed on them, and new value(s) for them.
|
java.lang.String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
UpdateItemRequest |
withAttributeUpdates(java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates)
This is a legacy parameter.
|
UpdateItemRequest |
withConditionalOperator(ConditionalOperator conditionalOperator)
This is a legacy parameter.
|
UpdateItemRequest |
withConditionalOperator(java.lang.String conditionalOperator)
This is a legacy parameter.
|
UpdateItemRequest |
withConditionExpression(java.lang.String conditionExpression)
A condition that must be satisfied in order for a conditional update to
succeed.
|
UpdateItemRequest |
withExpected(java.util.Map<java.lang.String,ExpectedAttributeValue> expected)
This is a legacy parameter.
|
UpdateItemRequest |
withExpressionAttributeNames(java.util.Map<java.lang.String,java.lang.String> expressionAttributeNames)
One or more substitution tokens for attribute names in an expression.
|
UpdateItemRequest |
withExpressionAttributeValues(java.util.Map<java.lang.String,AttributeValue> expressionAttributeValues)
One or more values that can be substituted in an expression.
|
UpdateItemRequest |
withKey(java.util.Map<java.lang.String,AttributeValue> key)
The primary key of the item to be updated.
|
UpdateItemRequest |
withReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
Determines the level of detail about provisioned throughput consumption
that is returned in the response:
|
UpdateItemRequest |
withReturnConsumedCapacity(java.lang.String returnConsumedCapacity)
Determines the level of detail about provisioned throughput consumption
that is returned in the response:
|
UpdateItemRequest |
withReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
Determines whether item collection metrics are returned.
|
UpdateItemRequest |
withReturnItemCollectionMetrics(java.lang.String returnItemCollectionMetrics)
Determines whether item collection metrics are returned.
|
UpdateItemRequest |
withReturnValues(ReturnValue returnValues)
Use
ReturnValues if you want to get the item attributes as
they appear before or after they are updated. |
UpdateItemRequest |
withReturnValues(java.lang.String returnValues)
Use
ReturnValues if you want to get the item attributes as
they appear before or after they are updated. |
UpdateItemRequest |
withTableName(java.lang.String tableName)
The name of the table containing the item to update.
|
UpdateItemRequest |
withUpdateExpression(java.lang.String updateExpression)
An expression that defines one or more attributes to be updated, the
action to be performed on them, and new value(s) for them.
|
clone, getCloneRoot, getCloneSource, getGeneralProgressListener, getRequestClientOptions, getRequestCredentials, getRequestMetricCollector, setGeneralProgressListener, setRequestCredentials, setRequestMetricCollector, withGeneralProgressListener, withRequestMetricCollector
public UpdateItemRequest()
public UpdateItemRequest(java.lang.String tableName, java.util.Map<java.lang.String,AttributeValue> key, java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates)
tableName
- The name of the table containing the item to update.
key
- The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
attributeUpdates
-
This is a legacy parameter. Use UpdateExpression
instead. For more information, see AttributeUpdates in the Amazon DynamoDB Developer
Guide.
public UpdateItemRequest(java.lang.String tableName, java.util.Map<java.lang.String,AttributeValue> key, java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates, java.lang.String returnValues)
tableName
- The name of the table containing the item to update.
key
- The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
attributeUpdates
-
This is a legacy parameter. Use UpdateExpression
instead. For more information, see AttributeUpdates in the Amazon DynamoDB Developer
Guide.
returnValues
-
Use ReturnValues
if you want to get the item
attributes as they appear before or after they are updated.
For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not
specified, or if its value is NONE
, then nothing
is returned. (This setting is the default for
ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the
item, as they appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated
attributes, as they appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the
item, as they appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated
attributes, as they appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
public UpdateItemRequest(java.lang.String tableName, java.util.Map<java.lang.String,AttributeValue> key, java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates, ReturnValue returnValues)
tableName
- The name of the table containing the item to update.
key
- The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
attributeUpdates
-
This is a legacy parameter. Use UpdateExpression
instead. For more information, see AttributeUpdates in the Amazon DynamoDB Developer
Guide.
returnValues
-
Use ReturnValues
if you want to get the item
attributes as they appear before or after they are updated.
For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not
specified, or if its value is NONE
, then nothing
is returned. (This setting is the default for
ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the
item, as they appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated
attributes, as they appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the
item, as they appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated
attributes, as they appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
public java.lang.String getTableName()
The name of the table containing the item to update.
Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+
The name of the table containing the item to update.
public void setTableName(java.lang.String tableName)
The name of the table containing the item to update.
Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+
tableName
- The name of the table containing the item to update.
public UpdateItemRequest withTableName(java.lang.String tableName)
The name of the table containing the item to update.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 3 - 255
Pattern: [a-zA-Z0-9_.-]+
tableName
- The name of the table containing the item to update.
public java.util.Map<java.lang.String,AttributeValue> getKey()
The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
public void setKey(java.util.Map<java.lang.String,AttributeValue> key)
The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
key
- The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
public UpdateItemRequest withKey(java.util.Map<java.lang.String,AttributeValue> key)
The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
Returns a reference to this object so that method calls can be chained together.
key
- The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
public UpdateItemRequest addKeyEntry(java.lang.String key, AttributeValue value)
The primary key of the item to be updated. Each element consists of an attribute name and a value for that attribute.
For the primary key, you must provide all of the attributes. For example, with a simple primary key, you only need to provide a value for the partition key. For a composite primary key, you must provide values for both the partition key and the sort key.
The method adds a new key-value pair into Key parameter, and returns a reference to this object so that method calls can be chained together.
key
- The key of the entry to be added into Key.value
- The corresponding value of the entry to be added into Key.public UpdateItemRequest clearKeyEntries()
Returns a reference to this object so that method calls can be chained together.
public java.util.Map<java.lang.String,AttributeValueUpdate> getAttributeUpdates()
This is a legacy parameter. Use UpdateExpression
instead.
For more information, see AttributeUpdates in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use UpdateExpression
instead. For more information, see AttributeUpdates in the Amazon DynamoDB Developer
Guide.
public void setAttributeUpdates(java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates)
This is a legacy parameter. Use UpdateExpression
instead.
For more information, see AttributeUpdates in the Amazon DynamoDB Developer Guide.
attributeUpdates
-
This is a legacy parameter. Use UpdateExpression
instead. For more information, see AttributeUpdates in the Amazon DynamoDB Developer
Guide.
public UpdateItemRequest withAttributeUpdates(java.util.Map<java.lang.String,AttributeValueUpdate> attributeUpdates)
This is a legacy parameter. Use UpdateExpression
instead.
For more information, see AttributeUpdates in the Amazon DynamoDB Developer Guide.
Returns a reference to this object so that method calls can be chained together.
attributeUpdates
-
This is a legacy parameter. Use UpdateExpression
instead. For more information, see AttributeUpdates in the Amazon DynamoDB Developer
Guide.
public UpdateItemRequest addAttributeUpdatesEntry(java.lang.String key, AttributeValueUpdate value)
This is a legacy parameter. Use UpdateExpression
instead.
For more information, see AttributeUpdates in the Amazon DynamoDB Developer Guide.
The method adds a new key-value pair into AttributeUpdates parameter, and returns a reference to this object so that method calls can be chained together.
key
- The key of the entry to be added into AttributeUpdates.value
- The corresponding value of the entry to be added into
AttributeUpdates.public UpdateItemRequest clearAttributeUpdatesEntries()
Returns a reference to this object so that method calls can be chained together.
public java.util.Map<java.lang.String,ExpectedAttributeValue> getExpected()
This is a legacy parameter. Use ConditionExpression
instead.
For more information, see Expected in the Amazon DynamoDB Developer Guide.
This is a legacy parameter. Use ConditionExpression
instead. For more information, see Expected in the Amazon DynamoDB Developer Guide.
public void setExpected(java.util.Map<java.lang.String,ExpectedAttributeValue> expected)
This is a legacy parameter. Use ConditionExpression
instead.
For more information, see Expected in the Amazon DynamoDB Developer Guide.
expected
-
This is a legacy parameter. Use
ConditionExpression
instead. For more
information, see Expected in the Amazon DynamoDB Developer Guide.
public UpdateItemRequest withExpected(java.util.Map<java.lang.String,ExpectedAttributeValue> expected)
This is a legacy parameter. Use ConditionExpression
instead.
For more information, see Expected in the Amazon DynamoDB Developer Guide.
Returns a reference to this object so that method calls can be chained together.
expected
-
This is a legacy parameter. Use
ConditionExpression
instead. For more
information, see Expected in the Amazon DynamoDB Developer Guide.
public UpdateItemRequest addExpectedEntry(java.lang.String key, ExpectedAttributeValue value)
This is a legacy parameter. Use ConditionExpression
instead.
For more information, see Expected in the Amazon DynamoDB Developer Guide.
The method adds a new key-value pair into Expected parameter, and returns a reference to this object so that method calls can be chained together.
key
- The key of the entry to be added into Expected.value
- The corresponding value of the entry to be added into
Expected.public UpdateItemRequest clearExpectedEntries()
Returns a reference to this object so that method calls can be chained together.
public java.lang.String getConditionalOperator()
This is a legacy parameter. Use ConditionExpression
instead.
For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.
Constraints:
Allowed Values: AND, OR
This is a legacy parameter. Use ConditionExpression
instead. For more information, see ConditionalOperator in the Amazon DynamoDB Developer
Guide.
ConditionalOperator
public void setConditionalOperator(java.lang.String conditionalOperator)
This is a legacy parameter. Use ConditionExpression
instead.
For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.
Constraints:
Allowed Values: AND, OR
conditionalOperator
-
This is a legacy parameter. Use
ConditionExpression
instead. For more
information, see ConditionalOperator in the Amazon DynamoDB Developer
Guide.
ConditionalOperator
public UpdateItemRequest withConditionalOperator(java.lang.String conditionalOperator)
This is a legacy parameter. Use ConditionExpression
instead.
For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: AND, OR
conditionalOperator
-
This is a legacy parameter. Use
ConditionExpression
instead. For more
information, see ConditionalOperator in the Amazon DynamoDB Developer
Guide.
ConditionalOperator
public void setConditionalOperator(ConditionalOperator conditionalOperator)
This is a legacy parameter. Use ConditionExpression
instead.
For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.
Constraints:
Allowed Values: AND, OR
conditionalOperator
-
This is a legacy parameter. Use
ConditionExpression
instead. For more
information, see ConditionalOperator in the Amazon DynamoDB Developer
Guide.
ConditionalOperator
public UpdateItemRequest withConditionalOperator(ConditionalOperator conditionalOperator)
This is a legacy parameter. Use ConditionExpression
instead.
For more information, see ConditionalOperator in the Amazon DynamoDB Developer Guide.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: AND, OR
conditionalOperator
-
This is a legacy parameter. Use
ConditionExpression
instead. For more
information, see ConditionalOperator in the Amazon DynamoDB Developer
Guide.
ConditionalOperator
public java.lang.String getReturnValues()
Use ReturnValues
if you want to get the item attributes as
they appear before or after they are updated. For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not specified, or if
its value is NONE
, then nothing is returned. (This setting
is the default for ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the item, as they
appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated attributes, as they
appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the item, as they
appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated attributes, as they
appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
Use ReturnValues
if you want to get the item
attributes as they appear before or after they are updated. For
UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not
specified, or if its value is NONE
, then nothing is
returned. (This setting is the default for
ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the item,
as they appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated attributes,
as they appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the item,
as they appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated attributes,
as they appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
ReturnValue
public void setReturnValues(java.lang.String returnValues)
Use ReturnValues
if you want to get the item attributes as
they appear before or after they are updated. For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not specified, or if
its value is NONE
, then nothing is returned. (This setting
is the default for ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the item, as they
appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated attributes, as they
appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the item, as they
appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated attributes, as they
appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
returnValues
-
Use ReturnValues
if you want to get the item
attributes as they appear before or after they are updated.
For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not
specified, or if its value is NONE
, then nothing
is returned. (This setting is the default for
ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the
item, as they appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated
attributes, as they appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the
item, as they appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated
attributes, as they appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
ReturnValue
public UpdateItemRequest withReturnValues(java.lang.String returnValues)
Use ReturnValues
if you want to get the item attributes as
they appear before or after they are updated. For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not specified, or if
its value is NONE
, then nothing is returned. (This setting
is the default for ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the item, as they
appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated attributes, as they
appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the item, as they
appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated attributes, as they
appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
returnValues
-
Use ReturnValues
if you want to get the item
attributes as they appear before or after they are updated.
For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not
specified, or if its value is NONE
, then nothing
is returned. (This setting is the default for
ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the
item, as they appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated
attributes, as they appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the
item, as they appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated
attributes, as they appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
ReturnValue
public void setReturnValues(ReturnValue returnValues)
Use ReturnValues
if you want to get the item attributes as
they appear before or after they are updated. For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not specified, or if
its value is NONE
, then nothing is returned. (This setting
is the default for ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the item, as they
appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated attributes, as they
appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the item, as they
appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated attributes, as they
appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
returnValues
-
Use ReturnValues
if you want to get the item
attributes as they appear before or after they are updated.
For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not
specified, or if its value is NONE
, then nothing
is returned. (This setting is the default for
ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the
item, as they appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated
attributes, as they appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the
item, as they appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated
attributes, as they appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
ReturnValue
public UpdateItemRequest withReturnValues(ReturnValue returnValues)
Use ReturnValues
if you want to get the item attributes as
they appear before or after they are updated. For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not specified, or if
its value is NONE
, then nothing is returned. (This setting
is the default for ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the item, as they
appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated attributes, as they
appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the item, as they
appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated attributes, as they
appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: NONE, ALL_OLD, UPDATED_OLD, ALL_NEW, UPDATED_NEW
returnValues
-
Use ReturnValues
if you want to get the item
attributes as they appear before or after they are updated.
For UpdateItem
, the valid values are:
NONE
- If ReturnValues
is not
specified, or if its value is NONE
, then nothing
is returned. (This setting is the default for
ReturnValues
.)
ALL_OLD
- Returns all of the attributes of the
item, as they appeared before the UpdateItem operation.
UPDATED_OLD
- Returns only the updated
attributes, as they appeared before the UpdateItem operation.
ALL_NEW
- Returns all of the attributes of the
item, as they appear after the UpdateItem operation.
UPDATED_NEW
- Returns only the updated
attributes, as they appear after the UpdateItem operation.
There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.
The values returned are strongly consistent.
ReturnValue
public java.lang.String getReturnConsumedCapacity()
Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary index that was
accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all. In these
cases, specifying INDEXES
will only return
ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details are included
in the response.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary index
that was accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all. In
these cases, specifying INDEXES
will only return
ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details are
included in the response.
ReturnConsumedCapacity
public void setReturnConsumedCapacity(java.lang.String returnConsumedCapacity)
Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary index that was
accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all. In these
cases, specifying INDEXES
will only return
ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details are included
in the response.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
returnConsumedCapacity
- Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary
index that was accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all.
In these cases, specifying INDEXES
will only
return ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details
are included in the response.
ReturnConsumedCapacity
public UpdateItemRequest withReturnConsumedCapacity(java.lang.String returnConsumedCapacity)
Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary index that was
accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all. In these
cases, specifying INDEXES
will only return
ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details are included
in the response.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
returnConsumedCapacity
- Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary
index that was accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all.
In these cases, specifying INDEXES
will only
return ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details
are included in the response.
ReturnConsumedCapacity
public void setReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary index that was
accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all. In these
cases, specifying INDEXES
will only return
ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details are included
in the response.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
returnConsumedCapacity
- Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary
index that was accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all.
In these cases, specifying INDEXES
will only
return ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details
are included in the response.
ReturnConsumedCapacity
public UpdateItemRequest withReturnConsumedCapacity(ReturnConsumedCapacity returnConsumedCapacity)
Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary index that was
accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all. In these
cases, specifying INDEXES
will only return
ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details are included
in the response.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: INDEXES, TOTAL, NONE
returnConsumedCapacity
- Determines the level of detail about provisioned throughput consumption that is returned in the response:
INDEXES
- The response includes the aggregate
ConsumedCapacity
for the operation, together with
ConsumedCapacity
for each table and secondary
index that was accessed.
Note that some operations, such as GetItem
and
BatchGetItem
, do not access any indexes at all.
In these cases, specifying INDEXES
will only
return ConsumedCapacity
information for table(s).
TOTAL
- The response includes only the aggregate
ConsumedCapacity
for the operation.
NONE
- No ConsumedCapacity
details
are included in the response.
ReturnConsumedCapacity
public java.lang.String getReturnItemCollectionMetrics()
Determines whether item collection metrics are returned. If set to
SIZE
, the response includes statistics about item
collections, if any, that were modified during the operation are returned
in the response. If set to NONE
(the default), no statistics
are returned.
Constraints:
Allowed Values: SIZE, NONE
Determines whether item collection metrics are returned. If set
to SIZE
, the response includes statistics about item
collections, if any, that were modified during the operation are
returned in the response. If set to NONE
(the
default), no statistics are returned.
ReturnItemCollectionMetrics
public void setReturnItemCollectionMetrics(java.lang.String returnItemCollectionMetrics)
Determines whether item collection metrics are returned. If set to
SIZE
, the response includes statistics about item
collections, if any, that were modified during the operation are returned
in the response. If set to NONE
(the default), no statistics
are returned.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
-
Determines whether item collection metrics are returned. If
set to SIZE
, the response includes statistics
about item collections, if any, that were modified during the
operation are returned in the response. If set to
NONE
(the default), no statistics are returned.
ReturnItemCollectionMetrics
public UpdateItemRequest withReturnItemCollectionMetrics(java.lang.String returnItemCollectionMetrics)
Determines whether item collection metrics are returned. If set to
SIZE
, the response includes statistics about item
collections, if any, that were modified during the operation are returned
in the response. If set to NONE
(the default), no statistics
are returned.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
-
Determines whether item collection metrics are returned. If
set to SIZE
, the response includes statistics
about item collections, if any, that were modified during the
operation are returned in the response. If set to
NONE
(the default), no statistics are returned.
ReturnItemCollectionMetrics
public void setReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
Determines whether item collection metrics are returned. If set to
SIZE
, the response includes statistics about item
collections, if any, that were modified during the operation are returned
in the response. If set to NONE
(the default), no statistics
are returned.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
-
Determines whether item collection metrics are returned. If
set to SIZE
, the response includes statistics
about item collections, if any, that were modified during the
operation are returned in the response. If set to
NONE
(the default), no statistics are returned.
ReturnItemCollectionMetrics
public UpdateItemRequest withReturnItemCollectionMetrics(ReturnItemCollectionMetrics returnItemCollectionMetrics)
Determines whether item collection metrics are returned. If set to
SIZE
, the response includes statistics about item
collections, if any, that were modified during the operation are returned
in the response. If set to NONE
(the default), no statistics
are returned.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Allowed Values: SIZE, NONE
returnItemCollectionMetrics
-
Determines whether item collection metrics are returned. If
set to SIZE
, the response includes statistics
about item collections, if any, that were modified during the
operation are returned in the response. If set to
NONE
(the default), no statistics are returned.
ReturnItemCollectionMetrics
public java.lang.String getUpdateExpression()
An expression that defines one or more attributes to be updated, the action to be performed on them, and new value(s) for them.
The following action values are available for
UpdateExpression
.
SET
- Adds one or more attributes and values to an item. If
any of these attribute already exist, they are replaced by the new
values. You can also use SET
to add or subtract from an
attribute that is of type Number. For example:
SET myNum = myNum + :val
SET
supports the following functions:
if_not_exists (path, operand)
- if the item does not contain
an attribute at the specified path, then if_not_exists
evaluates to operand; otherwise, it evaluates to path. You can use this
function to avoid overwriting an attribute that may already be present in
the item.
list_append (operand, operand)
- evaluates to a list with a
new element added to it. You can append the new element to the start or
the end of the list by reversing the order of the operands.
These function names are case-sensitive.
REMOVE
- Removes one or more attributes from an item.
ADD
- Adds the specified value to the item, if the attribute
does not already exist. If the attribute does exist, then the behavior of
ADD
depends on the data type of the attribute:
If the existing attribute is a number, and if Value
is also
a number, then Value
is mathematically added to the existing
attribute. If Value
is a negative number, then it is
subtracted from the existing attribute.
If you use ADD
to increment or decrement a number value for
an item that doesn't exist before the update, DynamoDB uses
0
as the initial value.
Similarly, if you use ADD
for an existing item to increment
or decrement an attribute value that doesn't exist before the update,
DynamoDB uses 0
as the initial value. For example, suppose
that the item you want to update doesn't have an attribute named
itemcount, but you decide to ADD
the number
3
to this attribute anyway. DynamoDB will create the
itemcount attribute, set its initial value to 0
, and
finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of 3
.
If the existing data type is a set and if Value
is also a
set, then Value
is added to the existing set. For example,
if the attribute value is the set [1,2]
, and the
ADD
action specified [3]
, then the final
attribute value is [1,2,3]
. An error occurs if an
ADD
action is specified for a set attribute and the
attribute type specified does not match the existing set type.
Both sets must have the same primitive data type. For example, if the
existing data type is a set of strings, the Value
must also
be a set of strings.
The ADD
action only supports Number and set data types. In
addition, ADD
can only be used on top-level attributes, not
nested attributes.
DELETE
- Deletes an element from a set.
If a set of values is specified, then those values are subtracted from
the old set. For example, if the attribute value was the set
[a,b,c]
and the DELETE
action specifies
[a,c]
, then the final attribute value is [b]
.
Specifying an empty set is an error.
The DELETE
action only supports set data types. In addition,
DELETE
can only be used on top-level attributes, not nested
attributes.
You can have many actions in a single expression, such as the following:
SET a=:value1, b=:value2 DELETE :value3, :value4, :value5
For more information on update expressions, see Modifying Items and Attributes in the Amazon DynamoDB Developer Guide.
An expression that defines one or more attributes to be updated, the action to be performed on them, and new value(s) for them.
The following action values are available for
UpdateExpression
.
SET
- Adds one or more attributes and values to an
item. If any of these attribute already exist, they are replaced
by the new values. You can also use SET
to add or
subtract from an attribute that is of type Number. For example:
SET myNum = myNum + :val
SET
supports the following functions:
if_not_exists (path, operand)
- if the item does not
contain an attribute at the specified path, then
if_not_exists
evaluates to operand; otherwise, it
evaluates to path. You can use this function to avoid overwriting
an attribute that may already be present in the item.
list_append (operand, operand)
- evaluates to a list
with a new element added to it. You can append the new element to
the start or the end of the list by reversing the order of the
operands.
These function names are case-sensitive.
REMOVE
- Removes one or more attributes from an
item.
ADD
- Adds the specified value to the item, if the
attribute does not already exist. If the attribute does exist,
then the behavior of ADD
depends on the data type of
the attribute:
If the existing attribute is a number, and if Value
is also a number, then Value
is mathematically added
to the existing attribute. If Value
is a negative
number, then it is subtracted from the existing attribute.
If you use ADD
to increment or decrement a number
value for an item that doesn't exist before the update, DynamoDB
uses 0
as the initial value.
Similarly, if you use ADD
for an existing item to
increment or decrement an attribute value that doesn't exist
before the update, DynamoDB uses 0
as the initial
value. For example, suppose that the item you want to update
doesn't have an attribute named itemcount, but you decide
to ADD
the number 3
to this attribute
anyway. DynamoDB will create the itemcount attribute, set
its initial value to 0
, and finally add
3
to it. The result will be a new itemcount
attribute in the item, with a value of 3
.
If the existing data type is a set and if Value
is
also a set, then Value
is added to the existing set.
For example, if the attribute value is the set [1,2]
, and the ADD
action specified [3]
,
then the final attribute value is [1,2,3]
. An error
occurs if an ADD
action is specified for a set
attribute and the attribute type specified does not match the
existing set type.
Both sets must have the same primitive data type. For example, if
the existing data type is a set of strings, the
Value
must also be a set of strings.
The ADD
action only supports Number and set data
types. In addition, ADD
can only be used on
top-level attributes, not nested attributes.
DELETE
- Deletes an element from a set.
If a set of values is specified, then those values are subtracted
from the old set. For example, if the attribute value was the set
[a,b,c]
and the DELETE
action specifies
[a,c]
, then the final attribute value is
[b]
. Specifying an empty set is an error.
The DELETE
action only supports set data types. In
addition, DELETE
can only be used on top-level
attributes, not nested attributes.
You can have many actions in a single expression, such as the
following:
SET a=:value1, b=:value2 DELETE :value3, :value4, :value5
For more information on update expressions, see Modifying Items and Attributes in the Amazon DynamoDB Developer Guide.
public void setUpdateExpression(java.lang.String updateExpression)
An expression that defines one or more attributes to be updated, the action to be performed on them, and new value(s) for them.
The following action values are available for
UpdateExpression
.
SET
- Adds one or more attributes and values to an item. If
any of these attribute already exist, they are replaced by the new
values. You can also use SET
to add or subtract from an
attribute that is of type Number. For example:
SET myNum = myNum + :val
SET
supports the following functions:
if_not_exists (path, operand)
- if the item does not contain
an attribute at the specified path, then if_not_exists
evaluates to operand; otherwise, it evaluates to path. You can use this
function to avoid overwriting an attribute that may already be present in
the item.
list_append (operand, operand)
- evaluates to a list with a
new element added to it. You can append the new element to the start or
the end of the list by reversing the order of the operands.
These function names are case-sensitive.
REMOVE
- Removes one or more attributes from an item.
ADD
- Adds the specified value to the item, if the attribute
does not already exist. If the attribute does exist, then the behavior of
ADD
depends on the data type of the attribute:
If the existing attribute is a number, and if Value
is also
a number, then Value
is mathematically added to the existing
attribute. If Value
is a negative number, then it is
subtracted from the existing attribute.
If you use ADD
to increment or decrement a number value for
an item that doesn't exist before the update, DynamoDB uses
0
as the initial value.
Similarly, if you use ADD
for an existing item to increment
or decrement an attribute value that doesn't exist before the update,
DynamoDB uses 0
as the initial value. For example, suppose
that the item you want to update doesn't have an attribute named
itemcount, but you decide to ADD
the number
3
to this attribute anyway. DynamoDB will create the
itemcount attribute, set its initial value to 0
, and
finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of 3
.
If the existing data type is a set and if Value
is also a
set, then Value
is added to the existing set. For example,
if the attribute value is the set [1,2]
, and the
ADD
action specified [3]
, then the final
attribute value is [1,2,3]
. An error occurs if an
ADD
action is specified for a set attribute and the
attribute type specified does not match the existing set type.
Both sets must have the same primitive data type. For example, if the
existing data type is a set of strings, the Value
must also
be a set of strings.
The ADD
action only supports Number and set data types. In
addition, ADD
can only be used on top-level attributes, not
nested attributes.
DELETE
- Deletes an element from a set.
If a set of values is specified, then those values are subtracted from
the old set. For example, if the attribute value was the set
[a,b,c]
and the DELETE
action specifies
[a,c]
, then the final attribute value is [b]
.
Specifying an empty set is an error.
The DELETE
action only supports set data types. In addition,
DELETE
can only be used on top-level attributes, not nested
attributes.
You can have many actions in a single expression, such as the following:
SET a=:value1, b=:value2 DELETE :value3, :value4, :value5
For more information on update expressions, see Modifying Items and Attributes in the Amazon DynamoDB Developer Guide.
updateExpression
- An expression that defines one or more attributes to be updated, the action to be performed on them, and new value(s) for them.
The following action values are available for
UpdateExpression
.
SET
- Adds one or more attributes and values to
an item. If any of these attribute already exist, they are
replaced by the new values. You can also use SET
to add or subtract from an attribute that is of type Number.
For example: SET myNum = myNum + :val
SET
supports the following functions:
if_not_exists (path, operand)
- if the item does
not contain an attribute at the specified path, then
if_not_exists
evaluates to operand; otherwise, it
evaluates to path. You can use this function to avoid
overwriting an attribute that may already be present in the
item.
list_append (operand, operand)
- evaluates to a
list with a new element added to it. You can append the new
element to the start or the end of the list by reversing the
order of the operands.
These function names are case-sensitive.
REMOVE
- Removes one or more attributes from an
item.
ADD
- Adds the specified value to the item, if
the attribute does not already exist. If the attribute does
exist, then the behavior of ADD
depends on the
data type of the attribute:
If the existing attribute is a number, and if
Value
is also a number, then Value
is mathematically added to the existing attribute. If
Value
is a negative number, then it is subtracted
from the existing attribute.
If you use ADD
to increment or decrement a number
value for an item that doesn't exist before the update,
DynamoDB uses 0
as the initial value.
Similarly, if you use ADD
for an existing item to
increment or decrement an attribute value that doesn't exist
before the update, DynamoDB uses 0
as the initial
value. For example, suppose that the item you want to update
doesn't have an attribute named itemcount, but you
decide to ADD
the number 3
to this
attribute anyway. DynamoDB will create the itemcount
attribute, set its initial value to 0
, and
finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of
3
.
If the existing data type is a set and if Value
is also a set, then Value
is added to the
existing set. For example, if the attribute value is the set
[1,2]
, and the ADD
action specified
[3]
, then the final attribute value is
[1,2,3]
. An error occurs if an ADD
action is specified for a set attribute and the attribute type
specified does not match the existing set type.
Both sets must have the same primitive data type. For example,
if the existing data type is a set of strings, the
Value
must also be a set of strings.
The ADD
action only supports Number and set data
types. In addition, ADD
can only be used on
top-level attributes, not nested attributes.
DELETE
- Deletes an element from a set.
If a set of values is specified, then those values are
subtracted from the old set. For example, if the attribute
value was the set [a,b,c]
and the
DELETE
action specifies [a,c]
, then
the final attribute value is [b]
. Specifying an
empty set is an error.
The DELETE
action only supports set data types.
In addition, DELETE
can only be used on top-level
attributes, not nested attributes.
You can have many actions in a single expression, such as the
following:
SET a=:value1, b=:value2 DELETE :value3, :value4, :value5
For more information on update expressions, see Modifying Items and Attributes in the Amazon DynamoDB Developer Guide.
public UpdateItemRequest withUpdateExpression(java.lang.String updateExpression)
An expression that defines one or more attributes to be updated, the action to be performed on them, and new value(s) for them.
The following action values are available for
UpdateExpression
.
SET
- Adds one or more attributes and values to an item. If
any of these attribute already exist, they are replaced by the new
values. You can also use SET
to add or subtract from an
attribute that is of type Number. For example:
SET myNum = myNum + :val
SET
supports the following functions:
if_not_exists (path, operand)
- if the item does not contain
an attribute at the specified path, then if_not_exists
evaluates to operand; otherwise, it evaluates to path. You can use this
function to avoid overwriting an attribute that may already be present in
the item.
list_append (operand, operand)
- evaluates to a list with a
new element added to it. You can append the new element to the start or
the end of the list by reversing the order of the operands.
These function names are case-sensitive.
REMOVE
- Removes one or more attributes from an item.
ADD
- Adds the specified value to the item, if the attribute
does not already exist. If the attribute does exist, then the behavior of
ADD
depends on the data type of the attribute:
If the existing attribute is a number, and if Value
is also
a number, then Value
is mathematically added to the existing
attribute. If Value
is a negative number, then it is
subtracted from the existing attribute.
If you use ADD
to increment or decrement a number value for
an item that doesn't exist before the update, DynamoDB uses
0
as the initial value.
Similarly, if you use ADD
for an existing item to increment
or decrement an attribute value that doesn't exist before the update,
DynamoDB uses 0
as the initial value. For example, suppose
that the item you want to update doesn't have an attribute named
itemcount, but you decide to ADD
the number
3
to this attribute anyway. DynamoDB will create the
itemcount attribute, set its initial value to 0
, and
finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of 3
.
If the existing data type is a set and if Value
is also a
set, then Value
is added to the existing set. For example,
if the attribute value is the set [1,2]
, and the
ADD
action specified [3]
, then the final
attribute value is [1,2,3]
. An error occurs if an
ADD
action is specified for a set attribute and the
attribute type specified does not match the existing set type.
Both sets must have the same primitive data type. For example, if the
existing data type is a set of strings, the Value
must also
be a set of strings.
The ADD
action only supports Number and set data types. In
addition, ADD
can only be used on top-level attributes, not
nested attributes.
DELETE
- Deletes an element from a set.
If a set of values is specified, then those values are subtracted from
the old set. For example, if the attribute value was the set
[a,b,c]
and the DELETE
action specifies
[a,c]
, then the final attribute value is [b]
.
Specifying an empty set is an error.
The DELETE
action only supports set data types. In addition,
DELETE
can only be used on top-level attributes, not nested
attributes.
You can have many actions in a single expression, such as the following:
SET a=:value1, b=:value2 DELETE :value3, :value4, :value5
For more information on update expressions, see Modifying Items and Attributes in the Amazon DynamoDB Developer Guide.
Returns a reference to this object so that method calls can be chained together.
updateExpression
- An expression that defines one or more attributes to be updated, the action to be performed on them, and new value(s) for them.
The following action values are available for
UpdateExpression
.
SET
- Adds one or more attributes and values to
an item. If any of these attribute already exist, they are
replaced by the new values. You can also use SET
to add or subtract from an attribute that is of type Number.
For example: SET myNum = myNum + :val
SET
supports the following functions:
if_not_exists (path, operand)
- if the item does
not contain an attribute at the specified path, then
if_not_exists
evaluates to operand; otherwise, it
evaluates to path. You can use this function to avoid
overwriting an attribute that may already be present in the
item.
list_append (operand, operand)
- evaluates to a
list with a new element added to it. You can append the new
element to the start or the end of the list by reversing the
order of the operands.
These function names are case-sensitive.
REMOVE
- Removes one or more attributes from an
item.
ADD
- Adds the specified value to the item, if
the attribute does not already exist. If the attribute does
exist, then the behavior of ADD
depends on the
data type of the attribute:
If the existing attribute is a number, and if
Value
is also a number, then Value
is mathematically added to the existing attribute. If
Value
is a negative number, then it is subtracted
from the existing attribute.
If you use ADD
to increment or decrement a number
value for an item that doesn't exist before the update,
DynamoDB uses 0
as the initial value.
Similarly, if you use ADD
for an existing item to
increment or decrement an attribute value that doesn't exist
before the update, DynamoDB uses 0
as the initial
value. For example, suppose that the item you want to update
doesn't have an attribute named itemcount, but you
decide to ADD
the number 3
to this
attribute anyway. DynamoDB will create the itemcount
attribute, set its initial value to 0
, and
finally add 3
to it. The result will be a new
itemcount attribute in the item, with a value of
3
.
If the existing data type is a set and if Value
is also a set, then Value
is added to the
existing set. For example, if the attribute value is the set
[1,2]
, and the ADD
action specified
[3]
, then the final attribute value is
[1,2,3]
. An error occurs if an ADD
action is specified for a set attribute and the attribute type
specified does not match the existing set type.
Both sets must have the same primitive data type. For example,
if the existing data type is a set of strings, the
Value
must also be a set of strings.
The ADD
action only supports Number and set data
types. In addition, ADD
can only be used on
top-level attributes, not nested attributes.
DELETE
- Deletes an element from a set.
If a set of values is specified, then those values are
subtracted from the old set. For example, if the attribute
value was the set [a,b,c]
and the
DELETE
action specifies [a,c]
, then
the final attribute value is [b]
. Specifying an
empty set is an error.
The DELETE
action only supports set data types.
In addition, DELETE
can only be used on top-level
attributes, not nested attributes.
You can have many actions in a single expression, such as the
following:
SET a=:value1, b=:value2 DELETE :value3, :value4, :value5
For more information on update expressions, see Modifying Items and Attributes in the Amazon DynamoDB Developer Guide.
public java.lang.String getConditionExpression()
A condition that must be satisfied in order for a conditional update to succeed.
An expression can contain any of the following:
Functions:
attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size
These function names are case-sensitive.
Comparison operators:
= | <> | < | > | <= | >= | BETWEEN | IN
Logical operators: AND | OR | NOT
For more information on condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
A condition that must be satisfied in order for a conditional update to succeed.
An expression can contain any of the following:
Functions:
attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size
These function names are case-sensitive.
Comparison operators:
= | <> | < | > | <= | >= | BETWEEN | IN
Logical operators: AND | OR | NOT
For more information on condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
public void setConditionExpression(java.lang.String conditionExpression)
A condition that must be satisfied in order for a conditional update to succeed.
An expression can contain any of the following:
Functions:
attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size
These function names are case-sensitive.
Comparison operators:
= | <> | < | > | <= | >= | BETWEEN | IN
Logical operators: AND | OR | NOT
For more information on condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
conditionExpression
- A condition that must be satisfied in order for a conditional update to succeed.
An expression can contain any of the following:
Functions:
attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size
These function names are case-sensitive.
Comparison operators:
= | <> | < | > | <= | >= | BETWEEN | IN
Logical operators: AND | OR | NOT
For more information on condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
public UpdateItemRequest withConditionExpression(java.lang.String conditionExpression)
A condition that must be satisfied in order for a conditional update to succeed.
An expression can contain any of the following:
Functions:
attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size
These function names are case-sensitive.
Comparison operators:
= | <> | < | > | <= | >= | BETWEEN | IN
Logical operators: AND | OR | NOT
For more information on condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
Returns a reference to this object so that method calls can be chained together.
conditionExpression
- A condition that must be satisfied in order for a conditional update to succeed.
An expression can contain any of the following:
Functions:
attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | size
These function names are case-sensitive.
Comparison operators:
= | <> | < | > | <= | >= | BETWEEN | IN
Logical operators: AND | OR | NOT
For more information on condition expressions, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
public java.util.Map<java.lang.String,java.lang.String> getExpressionAttributeNames()
One or more substitution tokens for attribute names in an expression. The
following are some use cases for using
ExpressionAttributeNames
:
To access an attribute whose name conflicts with a DynamoDB reserved word.
To create a placeholder for repeating occurrences of an attribute name in an expression.
To prevent special characters in an attribute name from being misinterpreted in an expression.
Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:
Percentile
The name of this attribute conflicts with a reserved word, so it cannot
be used directly in an expression. (For the complete list of reserved
words, see Reserved Words in the Amazon DynamoDB Developer Guide). To
work around this, you could specify the following for
ExpressionAttributeNames
:
{"#P":"Percentile"}
You could then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.
For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.
One or more substitution tokens for attribute names in an
expression. The following are some use cases for using
ExpressionAttributeNames
:
To access an attribute whose name conflicts with a DynamoDB reserved word.
To create a placeholder for repeating occurrences of an attribute name in an expression.
To prevent special characters in an attribute name from being misinterpreted in an expression.
Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:
Percentile
The name of this attribute conflicts with a reserved word, so it
cannot be used directly in an expression. (For the complete list
of reserved words, see Reserved Words in the Amazon DynamoDB Developer
Guide). To work around this, you could specify the following
for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.
For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.
public void setExpressionAttributeNames(java.util.Map<java.lang.String,java.lang.String> expressionAttributeNames)
One or more substitution tokens for attribute names in an expression. The
following are some use cases for using
ExpressionAttributeNames
:
To access an attribute whose name conflicts with a DynamoDB reserved word.
To create a placeholder for repeating occurrences of an attribute name in an expression.
To prevent special characters in an attribute name from being misinterpreted in an expression.
Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:
Percentile
The name of this attribute conflicts with a reserved word, so it cannot
be used directly in an expression. (For the complete list of reserved
words, see Reserved Words in the Amazon DynamoDB Developer Guide). To
work around this, you could specify the following for
ExpressionAttributeNames
:
{"#P":"Percentile"}
You could then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.
For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.
expressionAttributeNames
-
One or more substitution tokens for attribute names in an
expression. The following are some use cases for using
ExpressionAttributeNames
:
To access an attribute whose name conflicts with a DynamoDB reserved word.
To create a placeholder for repeating occurrences of an attribute name in an expression.
To prevent special characters in an attribute name from being misinterpreted in an expression.
Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:
Percentile
The name of this attribute conflicts with a reserved word, so
it cannot be used directly in an expression. (For the complete
list of reserved words, see Reserved Words in the Amazon DynamoDB Developer
Guide). To work around this, you could specify the
following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.
For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.
public UpdateItemRequest withExpressionAttributeNames(java.util.Map<java.lang.String,java.lang.String> expressionAttributeNames)
One or more substitution tokens for attribute names in an expression. The
following are some use cases for using
ExpressionAttributeNames
:
To access an attribute whose name conflicts with a DynamoDB reserved word.
To create a placeholder for repeating occurrences of an attribute name in an expression.
To prevent special characters in an attribute name from being misinterpreted in an expression.
Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:
Percentile
The name of this attribute conflicts with a reserved word, so it cannot
be used directly in an expression. (For the complete list of reserved
words, see Reserved Words in the Amazon DynamoDB Developer Guide). To
work around this, you could specify the following for
ExpressionAttributeNames
:
{"#P":"Percentile"}
You could then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.
For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.
Returns a reference to this object so that method calls can be chained together.
expressionAttributeNames
-
One or more substitution tokens for attribute names in an
expression. The following are some use cases for using
ExpressionAttributeNames
:
To access an attribute whose name conflicts with a DynamoDB reserved word.
To create a placeholder for repeating occurrences of an attribute name in an expression.
To prevent special characters in an attribute name from being misinterpreted in an expression.
Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:
Percentile
The name of this attribute conflicts with a reserved word, so
it cannot be used directly in an expression. (For the complete
list of reserved words, see Reserved Words in the Amazon DynamoDB Developer
Guide). To work around this, you could specify the
following for ExpressionAttributeNames
:
{"#P":"Percentile"}
You could then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.
For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.
public UpdateItemRequest addExpressionAttributeNamesEntry(java.lang.String key, java.lang.String value)
One or more substitution tokens for attribute names in an expression. The
following are some use cases for using
ExpressionAttributeNames
:
To access an attribute whose name conflicts with a DynamoDB reserved word.
To create a placeholder for repeating occurrences of an attribute name in an expression.
To prevent special characters in an attribute name from being misinterpreted in an expression.
Use the # character in an expression to dereference an attribute name. For example, consider the following attribute name:
Percentile
The name of this attribute conflicts with a reserved word, so it cannot
be used directly in an expression. (For the complete list of reserved
words, see Reserved Words in the Amazon DynamoDB Developer Guide). To
work around this, you could specify the following for
ExpressionAttributeNames
:
{"#P":"Percentile"}
You could then use this substitution in an expression, as in this example:
#P = :val
Tokens that begin with the : character are expression attribute values, which are placeholders for the actual value at runtime.
For more information on expression attribute names, see Accessing Item Attributes in the Amazon DynamoDB Developer Guide.
The method adds a new key-value pair into ExpressionAttributeNames parameter, and returns a reference to this object so that method calls can be chained together.
key
- The key of the entry to be added into
ExpressionAttributeNames.value
- The corresponding value of the entry to be added into
ExpressionAttributeNames.public UpdateItemRequest clearExpressionAttributeNamesEntries()
Returns a reference to this object so that method calls can be chained together.
public java.util.Map<java.lang.String,AttributeValue> getExpressionAttributeValues()
One or more values that can be substituted in an expression.
Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:
Available | Backordered | Discontinued
You would first need to specify ExpressionAttributeValues
as
follows:
{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} }
You could then use these values in an expression, such as this:
ProductStatus IN (:avail, :back, :disc)
For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
One or more values that can be substituted in an expression.
Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:
Available | Backordered | Discontinued
You would first need to specify
ExpressionAttributeValues
as follows:
{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} }
You could then use these values in an expression, such as this:
ProductStatus IN (:avail, :back, :disc)
For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
public void setExpressionAttributeValues(java.util.Map<java.lang.String,AttributeValue> expressionAttributeValues)
One or more values that can be substituted in an expression.
Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:
Available | Backordered | Discontinued
You would first need to specify ExpressionAttributeValues
as
follows:
{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} }
You could then use these values in an expression, such as this:
ProductStatus IN (:avail, :back, :disc)
For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
expressionAttributeValues
- One or more values that can be substituted in an expression.
Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:
Available | Backordered | Discontinued
You would first need to specify
ExpressionAttributeValues
as follows:
{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} }
You could then use these values in an expression, such as this:
ProductStatus IN (:avail, :back, :disc)
For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
public UpdateItemRequest withExpressionAttributeValues(java.util.Map<java.lang.String,AttributeValue> expressionAttributeValues)
One or more values that can be substituted in an expression.
Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:
Available | Backordered | Discontinued
You would first need to specify ExpressionAttributeValues
as
follows:
{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} }
You could then use these values in an expression, such as this:
ProductStatus IN (:avail, :back, :disc)
For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
Returns a reference to this object so that method calls can be chained together.
expressionAttributeValues
- One or more values that can be substituted in an expression.
Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:
Available | Backordered | Discontinued
You would first need to specify
ExpressionAttributeValues
as follows:
{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} }
You could then use these values in an expression, such as this:
ProductStatus IN (:avail, :back, :disc)
For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
public UpdateItemRequest addExpressionAttributeValuesEntry(java.lang.String key, AttributeValue value)
One or more values that can be substituted in an expression.
Use the : (colon) character in an expression to dereference an attribute value. For example, suppose that you wanted to check whether the value of the ProductStatus attribute was one of the following:
Available | Backordered | Discontinued
You would first need to specify ExpressionAttributeValues
as
follows:
{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} }
You could then use these values in an expression, such as this:
ProductStatus IN (:avail, :back, :disc)
For more information on expression attribute values, see Specifying Conditions in the Amazon DynamoDB Developer Guide.
The method adds a new key-value pair into ExpressionAttributeValues parameter, and returns a reference to this object so that method calls can be chained together.
key
- The key of the entry to be added into
ExpressionAttributeValues.value
- The corresponding value of the entry to be added into
ExpressionAttributeValues.public UpdateItemRequest clearExpressionAttributeValuesEntries()
Returns a reference to this object so that method calls can be chained together.
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
Copyright © 2018 Amazon Web Services, Inc. All Rights Reserved.