public sealed class ExecuteBatchDmlResponse : IMessage<ExecuteBatchDmlResponse>, IEquatable<ExecuteBatchDmlResponse>, IDeepCloneable<ExecuteBatchDmlResponse>, IBufferMessage, IMessage
Reference documentation and code samples for the Google Cloud Spanner v1 API class ExecuteBatchDmlResponse.
The response for [ExecuteBatchDml][google.spanner.v1.Spanner.ExecuteBatchDml]. Contains a list of [ResultSet][google.spanner.v1.ResultSet] messages, one for each DML statement that has successfully executed, in the same order as the statements in the request. If a statement fails, the status in the response body identifies the cause of the failure.
To check for DML statements that failed, use the following approach:
- Check the status in the response message. The
[google.rpc.Code][google.rpc.Code] enum
value
OK
indicates that all statements were executed successfully. - If the status was not
OK
, check the number of result sets in the response. If the response containsN
[ResultSet][google.spanner.v1.ResultSet] messages, then statementN+1
in the request failed.
Example 1:
- Request: 5 DML statements, all executed successfully.
- Response: 5 [ResultSet][google.spanner.v1.ResultSet] messages, with the
status
OK
.
Example 2:
- Request: 5 DML statements. The third statement has a syntax error.
- Response: 2 [ResultSet][google.spanner.v1.ResultSet] messages, and a syntax
error (
INVALID_ARGUMENT
) status. The number of [ResultSet][google.spanner.v1.ResultSet] messages indicates that the third statement failed, and the fourth and fifth statements were not executed.
Implements
IMessageExecuteBatchDmlResponse, IEquatableExecuteBatchDmlResponse, IDeepCloneableExecuteBatchDmlResponse, IBufferMessage, IMessageNamespace
Google.Cloud.Spanner.V1Assembly
Google.Cloud.Spanner.V1.dll
Constructors
ExecuteBatchDmlResponse()
public ExecuteBatchDmlResponse()
ExecuteBatchDmlResponse(ExecuteBatchDmlResponse)
public ExecuteBatchDmlResponse(ExecuteBatchDmlResponse other)
Parameter | |
---|---|
Name | Description |
other |
ExecuteBatchDmlResponse |
Properties
ResultSets
public RepeatedField<ResultSet> ResultSets { get; }
One [ResultSet][google.spanner.v1.ResultSet] for each statement in the request that ran successfully, in the same order as the statements in the request. Each [ResultSet][google.spanner.v1.ResultSet] does not contain any rows. The [ResultSetStats][google.spanner.v1.ResultSetStats] in each [ResultSet][google.spanner.v1.ResultSet] contain the number of rows modified by the statement.
Only the first [ResultSet][google.spanner.v1.ResultSet] in the response contains valid [ResultSetMetadata][google.spanner.v1.ResultSetMetadata].
Property Value | |
---|---|
Type | Description |
RepeatedFieldResultSet |
Status
public Status Status { get; set; }
If all DML statements are executed successfully, the status is OK
.
Otherwise, the error status of the first failed statement.
Property Value | |
---|---|
Type | Description |
Status |