Method: googleapis.spanner.v1.projects.instances.databases.sessions.executeSql

Executes an SQL statement, returning all results in a single reply. This method can't be used to return a result set larger than 10 MiB; if the query yields more data than that, the query fails with a FAILED_PRECONDITION error. Operations inside read-write transactions might return ABORTED. If this occurs, the application should restart the transaction from the beginning. See Transaction for more details. Larger result sets can be fetched in fashion by calling ExecuteSql instead. The query string can be SQL or Graph Query Language (GQL).

For more information about retries and long-running operations, see Understand connectors.

Arguments

Parameters
session

string

Required. The session in which the SQL query should be performed.

body

object (ExecuteSqlRequest)

Required.

Raised exceptions

Exceptions
ConnectionErrorIn case of a network problem (such as DNS failure or refused connection).
HttpErrorIf the response status is >= 400 (excluding 429 and 503).
TimeoutErrorIf a long-running operation takes longer to finish than the specified timeout limit.
TypeErrorIf an operation or function receives an argument of the wrong type.
ValueErrorIf an operation or function receives an argument of the right type but an inappropriate value. For example, a negative timeout.

Response

If successful, the response contains an instance of ResultSet.

Subworkflow snippet

Some fields might be optional or required. To identify required fields, refer to the API documentation.

YAML

- executeSql:
    call: googleapis.spanner.v1.projects.instances.databases.sessions.executeSql
    args:
        session: ...
        body:
            dataBoostEnabled: ...
            directedReadOptions:
                excludeReplicas:
                    replicaSelections: ...
                includeReplicas:
                    autoFailoverDisabled: ...
                    replicaSelections: ...
            lastStatement: ...
            paramTypes: ...
            params: ...
            partitionToken: ...
            queryMode: ...
            queryOptions:
                optimizerStatisticsPackage: ...
                optimizerVersion: ...
            requestOptions:
                priority: ...
                requestTag: ...
                transactionTag: ...
            resumeToken: ...
            seqno: ...
            sql: ...
            transaction:
                begin:
                    excludeTxnFromChangeStreams: ...
                    isolationLevel: ...
                    partitionedDml: ...
                    readOnly:
                        exactStaleness: ...
                        maxStaleness: ...
                        minReadTimestamp: ...
                        readTimestamp: ...
                        returnReadTimestamp: ...
                        strong: ...
                    readWrite:
                        multiplexedSessionPreviousTransactionId: ...
                        readLockMode: ...
                id: ...
                singleUse: ...
    result: executeSqlResult

JSON

[
  {
    "executeSql": {
      "call": "googleapis.spanner.v1.projects.instances.databases.sessions.executeSql",
      "args": {
        "session": "...",
        "body": {
          "dataBoostEnabled": "...",
          "directedReadOptions": {
            "excludeReplicas": {
              "replicaSelections": "..."
            },
            "includeReplicas": {
              "autoFailoverDisabled": "...",
              "replicaSelections": "..."
            }
          },
          "lastStatement": "...",
          "paramTypes": "...",
          "params": "...",
          "partitionToken": "...",
          "queryMode": "...",
          "queryOptions": {
            "optimizerStatisticsPackage": "...",
            "optimizerVersion": "..."
          },
          "requestOptions": {
            "priority": "...",
            "requestTag": "...",
            "transactionTag": "..."
          },
          "resumeToken": "...",
          "seqno": "...",
          "sql": "...",
          "transaction": {
            "begin": {
              "excludeTxnFromChangeStreams": "...",
              "isolationLevel": "...",
              "partitionedDml": "...",
              "readOnly": {
                "exactStaleness": "...",
                "maxStaleness": "...",
                "minReadTimestamp": "...",
                "readTimestamp": "...",
                "returnReadTimestamp": "...",
                "strong": "..."
              },
              "readWrite": {
                "multiplexedSessionPreviousTransactionId": "...",
                "readLockMode": "..."
              }
            },
            "id": "...",
            "singleUse": "..."
          }
        }
      },
      "result": "executeSqlResult"
    }
  }
]