Class ExecuteSqlRequest

  • All Implemented Interfaces:
    com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, ExecuteSqlRequestOrBuilder, Serializable

    public final class ExecuteSqlRequest
    extends com.google.protobuf.GeneratedMessageV3
    implements ExecuteSqlRequestOrBuilder
     The request for [ExecuteSql][google.spanner.v1.Spanner.ExecuteSql] and
     [ExecuteStreamingSql][google.spanner.v1.Spanner.ExecuteStreamingSql].
     
    Protobuf type google.spanner.v1.ExecuteSqlRequest
    See Also:
    Serialized Form
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetMapField

        protected com.google.protobuf.MapField internalGetMapField​(int number)
        Overrides:
        internalGetMapField in class com.google.protobuf.GeneratedMessageV3
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • getSession

        public String getSession()
         Required. The session in which the SQL query should be performed.
         
        string session = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
        Specified by:
        getSession in interface ExecuteSqlRequestOrBuilder
        Returns:
        The session.
      • getSessionBytes

        public com.google.protobuf.ByteString getSessionBytes()
         Required. The session in which the SQL query should be performed.
         
        string session = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
        Specified by:
        getSessionBytes in interface ExecuteSqlRequestOrBuilder
        Returns:
        The bytes for session.
      • hasTransaction

        public boolean hasTransaction()
         The transaction to use.
        
         For queries, if none is provided, the default is a temporary read-only
         transaction with strong concurrency.
        
         Standard DML statements require a read-write transaction. To protect
         against replays, single-use transactions are not supported.  The caller
         must either supply an existing transaction ID or begin a new transaction.
        
         Partitioned DML requires an existing Partitioned DML transaction ID.
         
        .google.spanner.v1.TransactionSelector transaction = 2;
        Specified by:
        hasTransaction in interface ExecuteSqlRequestOrBuilder
        Returns:
        Whether the transaction field is set.
      • getTransaction

        public TransactionSelector getTransaction()
         The transaction to use.
        
         For queries, if none is provided, the default is a temporary read-only
         transaction with strong concurrency.
        
         Standard DML statements require a read-write transaction. To protect
         against replays, single-use transactions are not supported.  The caller
         must either supply an existing transaction ID or begin a new transaction.
        
         Partitioned DML requires an existing Partitioned DML transaction ID.
         
        .google.spanner.v1.TransactionSelector transaction = 2;
        Specified by:
        getTransaction in interface ExecuteSqlRequestOrBuilder
        Returns:
        The transaction.
      • getTransactionOrBuilder

        public TransactionSelectorOrBuilder getTransactionOrBuilder()
         The transaction to use.
        
         For queries, if none is provided, the default is a temporary read-only
         transaction with strong concurrency.
        
         Standard DML statements require a read-write transaction. To protect
         against replays, single-use transactions are not supported.  The caller
         must either supply an existing transaction ID or begin a new transaction.
        
         Partitioned DML requires an existing Partitioned DML transaction ID.
         
        .google.spanner.v1.TransactionSelector transaction = 2;
        Specified by:
        getTransactionOrBuilder in interface ExecuteSqlRequestOrBuilder
      • getSql

        public String getSql()
         Required. The SQL string.
         
        string sql = 3 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getSql in interface ExecuteSqlRequestOrBuilder
        Returns:
        The sql.
      • getSqlBytes

        public com.google.protobuf.ByteString getSqlBytes()
         Required. The SQL string.
         
        string sql = 3 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getSqlBytes in interface ExecuteSqlRequestOrBuilder
        Returns:
        The bytes for sql.
      • hasParams

        public boolean hasParams()
         Parameter names and values that bind to placeholders in the SQL string.
        
         A parameter placeholder consists of the `@` character followed by the
         parameter name (for example, `@firstName`). Parameter names must conform
         to the naming requirements of identifiers as specified at
         https://cloud.google.com/spanner/docs/lexical#identifiers.
        
         Parameters can appear anywhere that a literal value is expected.  The same
         parameter name can be used more than once, for example:
        
         `"WHERE id > @msg_id AND id < @msg_id + 100"`
        
         It is an error to execute a SQL statement with unbound parameters.
         
        .google.protobuf.Struct params = 4;
        Specified by:
        hasParams in interface ExecuteSqlRequestOrBuilder
        Returns:
        Whether the params field is set.
      • getParams

        public com.google.protobuf.Struct getParams()
         Parameter names and values that bind to placeholders in the SQL string.
        
         A parameter placeholder consists of the `@` character followed by the
         parameter name (for example, `@firstName`). Parameter names must conform
         to the naming requirements of identifiers as specified at
         https://cloud.google.com/spanner/docs/lexical#identifiers.
        
         Parameters can appear anywhere that a literal value is expected.  The same
         parameter name can be used more than once, for example:
        
         `"WHERE id > @msg_id AND id < @msg_id + 100"`
        
         It is an error to execute a SQL statement with unbound parameters.
         
        .google.protobuf.Struct params = 4;
        Specified by:
        getParams in interface ExecuteSqlRequestOrBuilder
        Returns:
        The params.
      • getParamsOrBuilder

        public com.google.protobuf.StructOrBuilder getParamsOrBuilder()
         Parameter names and values that bind to placeholders in the SQL string.
        
         A parameter placeholder consists of the `@` character followed by the
         parameter name (for example, `@firstName`). Parameter names must conform
         to the naming requirements of identifiers as specified at
         https://cloud.google.com/spanner/docs/lexical#identifiers.
        
         Parameters can appear anywhere that a literal value is expected.  The same
         parameter name can be used more than once, for example:
        
         `"WHERE id > @msg_id AND id < @msg_id + 100"`
        
         It is an error to execute a SQL statement with unbound parameters.
         
        .google.protobuf.Struct params = 4;
        Specified by:
        getParamsOrBuilder in interface ExecuteSqlRequestOrBuilder
      • getParamTypesCount

        public int getParamTypesCount()
        Description copied from interface: ExecuteSqlRequestOrBuilder
         It is not always possible for Cloud Spanner to infer the right SQL type
         from a JSON value.  For example, values of type `BYTES` and values
         of type `STRING` both appear in [params][google.spanner.v1.ExecuteSqlRequest.params] as JSON strings.
        
         In these cases, `param_types` can be used to specify the exact
         SQL type for some or all of the SQL statement parameters. See the
         definition of [Type][google.spanner.v1.Type] for more information
         about SQL types.
         
        map<string, .google.spanner.v1.Type> param_types = 5;
        Specified by:
        getParamTypesCount in interface ExecuteSqlRequestOrBuilder
      • containsParamTypes

        public boolean containsParamTypes​(String key)
         It is not always possible for Cloud Spanner to infer the right SQL type
         from a JSON value.  For example, values of type `BYTES` and values
         of type `STRING` both appear in [params][google.spanner.v1.ExecuteSqlRequest.params] as JSON strings.
        
         In these cases, `param_types` can be used to specify the exact
         SQL type for some or all of the SQL statement parameters. See the
         definition of [Type][google.spanner.v1.Type] for more information
         about SQL types.
         
        map<string, .google.spanner.v1.Type> param_types = 5;
        Specified by:
        containsParamTypes in interface ExecuteSqlRequestOrBuilder
      • getParamTypesMap

        public Map<String,​Type> getParamTypesMap()
         It is not always possible for Cloud Spanner to infer the right SQL type
         from a JSON value.  For example, values of type `BYTES` and values
         of type `STRING` both appear in [params][google.spanner.v1.ExecuteSqlRequest.params] as JSON strings.
        
         In these cases, `param_types` can be used to specify the exact
         SQL type for some or all of the SQL statement parameters. See the
         definition of [Type][google.spanner.v1.Type] for more information
         about SQL types.
         
        map<string, .google.spanner.v1.Type> param_types = 5;
        Specified by:
        getParamTypesMap in interface ExecuteSqlRequestOrBuilder
      • getParamTypesOrDefault

        public Type getParamTypesOrDefault​(String key,
                                           Type defaultValue)
         It is not always possible for Cloud Spanner to infer the right SQL type
         from a JSON value.  For example, values of type `BYTES` and values
         of type `STRING` both appear in [params][google.spanner.v1.ExecuteSqlRequest.params] as JSON strings.
        
         In these cases, `param_types` can be used to specify the exact
         SQL type for some or all of the SQL statement parameters. See the
         definition of [Type][google.spanner.v1.Type] for more information
         about SQL types.
         
        map<string, .google.spanner.v1.Type> param_types = 5;
        Specified by:
        getParamTypesOrDefault in interface ExecuteSqlRequestOrBuilder
      • getParamTypesOrThrow

        public Type getParamTypesOrThrow​(String key)
         It is not always possible for Cloud Spanner to infer the right SQL type
         from a JSON value.  For example, values of type `BYTES` and values
         of type `STRING` both appear in [params][google.spanner.v1.ExecuteSqlRequest.params] as JSON strings.
        
         In these cases, `param_types` can be used to specify the exact
         SQL type for some or all of the SQL statement parameters. See the
         definition of [Type][google.spanner.v1.Type] for more information
         about SQL types.
         
        map<string, .google.spanner.v1.Type> param_types = 5;
        Specified by:
        getParamTypesOrThrow in interface ExecuteSqlRequestOrBuilder
      • getResumeToken

        public com.google.protobuf.ByteString getResumeToken()
         If this request is resuming a previously interrupted SQL statement
         execution, `resume_token` should be copied from the last
         [PartialResultSet][google.spanner.v1.PartialResultSet] yielded before the interruption. Doing this
         enables the new SQL statement execution to resume where the last one left
         off. The rest of the request parameters must exactly match the
         request that yielded this token.
         
        bytes resume_token = 6;
        Specified by:
        getResumeToken in interface ExecuteSqlRequestOrBuilder
        Returns:
        The resumeToken.
      • getQueryModeValue

        public int getQueryModeValue()
         Used to control the amount of debugging information returned in
         [ResultSetStats][google.spanner.v1.ResultSetStats]. If [partition_token][google.spanner.v1.ExecuteSqlRequest.partition_token] is set, [query_mode][google.spanner.v1.ExecuteSqlRequest.query_mode] can only
         be set to [QueryMode.NORMAL][google.spanner.v1.ExecuteSqlRequest.QueryMode.NORMAL].
         
        .google.spanner.v1.ExecuteSqlRequest.QueryMode query_mode = 7;
        Specified by:
        getQueryModeValue in interface ExecuteSqlRequestOrBuilder
        Returns:
        The enum numeric value on the wire for queryMode.
      • getQueryMode

        public ExecuteSqlRequest.QueryMode getQueryMode()
         Used to control the amount of debugging information returned in
         [ResultSetStats][google.spanner.v1.ResultSetStats]. If [partition_token][google.spanner.v1.ExecuteSqlRequest.partition_token] is set, [query_mode][google.spanner.v1.ExecuteSqlRequest.query_mode] can only
         be set to [QueryMode.NORMAL][google.spanner.v1.ExecuteSqlRequest.QueryMode.NORMAL].
         
        .google.spanner.v1.ExecuteSqlRequest.QueryMode query_mode = 7;
        Specified by:
        getQueryMode in interface ExecuteSqlRequestOrBuilder
        Returns:
        The queryMode.
      • getPartitionToken

        public com.google.protobuf.ByteString getPartitionToken()
         If present, results will be restricted to the specified partition
         previously created using PartitionQuery().  There must be an exact
         match for the values of fields common to this message and the
         PartitionQueryRequest message used to create this partition_token.
         
        bytes partition_token = 8;
        Specified by:
        getPartitionToken in interface ExecuteSqlRequestOrBuilder
        Returns:
        The partitionToken.
      • getSeqno

        public long getSeqno()
         A per-transaction sequence number used to identify this request. This field
         makes each request idempotent such that if the request is received multiple
         times, at most one will succeed.
        
         The sequence number must be monotonically increasing within the
         transaction. If a request arrives for the first time with an out-of-order
         sequence number, the transaction may be aborted. Replays of previously
         handled requests will yield the same response as the first execution.
        
         Required for DML statements. Ignored for queries.
         
        int64 seqno = 9;
        Specified by:
        getSeqno in interface ExecuteSqlRequestOrBuilder
        Returns:
        The seqno.
      • hasQueryOptions

        public boolean hasQueryOptions()
         Query optimizer configuration to use for the given query.
         
        .google.spanner.v1.ExecuteSqlRequest.QueryOptions query_options = 10;
        Specified by:
        hasQueryOptions in interface ExecuteSqlRequestOrBuilder
        Returns:
        Whether the queryOptions field is set.
      • hasRequestOptions

        public boolean hasRequestOptions()
         Common options for this request.
         
        .google.spanner.v1.RequestOptions request_options = 11;
        Specified by:
        hasRequestOptions in interface ExecuteSqlRequestOrBuilder
        Returns:
        Whether the requestOptions field is set.
      • getDataBoostEnabled

        public boolean getDataBoostEnabled()
         If this is for a partitioned query and this field is set to `true`, the
         request will be executed via Spanner independent compute resources.
        
         If the field is set to `true` but the request does not set
         `partition_token`, the API will return an `INVALID_ARGUMENT` error.
         
        bool data_boost_enabled = 16;
        Specified by:
        getDataBoostEnabled in interface ExecuteSqlRequestOrBuilder
        Returns:
        The dataBoostEnabled.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static ExecuteSqlRequest parseFrom​(ByteBuffer data)
                                           throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ExecuteSqlRequest parseFrom​(ByteBuffer data,
                                                  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                           throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ExecuteSqlRequest parseFrom​(com.google.protobuf.ByteString data)
                                           throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ExecuteSqlRequest parseFrom​(com.google.protobuf.ByteString data,
                                                  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                           throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ExecuteSqlRequest parseFrom​(byte[] data)
                                           throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ExecuteSqlRequest parseFrom​(byte[] data,
                                                  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                           throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static ExecuteSqlRequest parseFrom​(com.google.protobuf.CodedInputStream input,
                                                  com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                           throws IOException
        Throws:
        IOException
      • newBuilderForType

        public ExecuteSqlRequest.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public ExecuteSqlRequest.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected ExecuteSqlRequest.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getParserForType

        public com.google.protobuf.Parser<ExecuteSqlRequest> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public ExecuteSqlRequest getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder