Class Mutation (3.6.0)

Mutation(mapping=None, *, ignore_unknown_fields=False, **kwargs)

A modification to one or more Cloud Spanner rows. Mutations can be applied to a Cloud Spanner database by sending them in a Commit][google.spanner.v1.Spanner.Commit] call.

Attributes

NameDescription
insert google.cloud.spanner_v1.types.Mutation.Write
Insert new rows in a table. If any of the rows already exist, the write or transaction fails with error ALREADY_EXISTS.
update google.cloud.spanner_v1.types.Mutation.Write
Update existing rows in a table. If any of the rows does not already exist, the transaction fails with error NOT_FOUND.
insert_or_update google.cloud.spanner_v1.types.Mutation.Write
Like insert][google.spanner.v1.Mutation.insert], except that if the row already exists, then its column values are overwritten with the ones provided. Any column values not explicitly written are preserved. When using insert_or_update][google.spanner.v1.Mutation.insert_or_update], just as when using insert][google.spanner.v1.Mutation.insert], all NOT NULL columns in the table must be given a value. This holds true even when the row already exists and will therefore actually be updated.
replace google.cloud.spanner_v1.types.Mutation.Write
Like insert][google.spanner.v1.Mutation.insert], except that if the row already exists, it is deleted, and the column values provided are inserted instead. Unlike insert_or_update][google.spanner.v1.Mutation.insert_or_update], this means any values not explicitly written become NULL. In an interleaved table, if you create the child table with the ON DELETE CASCADE annotation, then replacing a parent row also deletes the child rows. Otherwise, you must delete the child rows before you replace the parent row.
delete google.cloud.spanner_v1.types.Mutation.Delete
Delete rows from a table. Succeeds whether or not the named rows were present.

Classes

Delete

Delete(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Arguments to delete][google.spanner.v1.Mutation.delete] operations. .. attribute:: table

Required. The table whose rows will be deleted.

:type: str

Write

Write(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Arguments to insert][google.spanner.v1.Mutation.insert], update][google.spanner.v1.Mutation.update], insert_or_update][google.spanner.v1.Mutation.insert_or_update], and replace][google.spanner.v1.Mutation.replace] operations.