Class UpdateDatabaseDdlRequest

Enqueues the given DDL statements to be applied, in order but not necessarily all at once, to the database schema at some point (or points) in the future. The server checks that the statements are executable (syntactically valid, name tables that exist, etc.) before enqueueing them, but they may still fail upon later execution (e.g., if a statement from another batch of statements is applied first and it conflicts in some way, or if there is some data-related problem like a NULL value in a column to which NOT NULL would be added). If a statement fails, all subsequent statements in the batch are automatically cancelled.

Each batch of statements is assigned a name which can be used with the Operations][google.longrunning.Operations] API to monitor progress. See the operation_id][google.spanner.admin.database.v1.UpdateDatabaseDdlRequest.operation_id] field for more details.

Attributes
NameDescription
strdatabase
Required. The database to update.
Sequence[str]statements
Required. DDL statements to be applied to the database.
stroperation_id
If empty, the new update request is assigned an automatically-generated operation ID. Otherwise, ``operation_id`` is used to construct the name of the resulting `Operation][google.longrunning.Operation]`. Specifying an explicit operation ID simplifies determining whether the statements were executed in the event that the `UpdateDatabaseDdl][google.spanner.admin.database.v1.DatabaseAdmin.UpdateDatabaseDdl]` call is replayed, or the return value is otherwise lost: the `database][google.spanner.admin.database.v1.UpdateDatabaseDdlRequest.database]` and ``operation_id`` fields can be combined to form the `name][google.longrunning.Operation.name]` of the resulting `longrunning.Operation][google.longrunning.Operation]`: ``

Inheritance

builtins.object > proto.message.Message > UpdateDatabaseDdlRequest