Cloud Spanner V1 Client - Class Mutation (1.90.0)

Reference documentation and code samples for the Cloud Spanner V1 Client class Mutation.

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

Generated from protobuf message google.spanner.v1.Mutation

Namespace

Google \ Cloud \ Spanner \ V1

Methods

__construct

Constructor.

Parameters
Name Description
data array

Optional. Data for populating the Message object.

↳ insert 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 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 Mutation\Write

Like 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, just as when using 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 Mutation\Write

Like insert, except that if the row already exists, it is deleted, and the column values provided are inserted instead. Unlike 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 Mutation\Delete

Delete rows from a table. Succeeds whether or not the named rows were present.

getInsert

Insert new rows in a table. If any of the rows already exist, the write or transaction fails with error ALREADY_EXISTS.

Returns
Type Description
Mutation\Write|null

hasInsert

setInsert

Insert new rows in a table. If any of the rows already exist, the write or transaction fails with error ALREADY_EXISTS.

Parameter
Name Description
var Mutation\Write
Returns
Type Description
$this

getUpdate

Update existing rows in a table. If any of the rows does not already exist, the transaction fails with error NOT_FOUND.

Returns
Type Description
Mutation\Write|null

hasUpdate

setUpdate

Update existing rows in a table. If any of the rows does not already exist, the transaction fails with error NOT_FOUND.

Parameter
Name Description
var Mutation\Write
Returns
Type Description
$this

getInsertOrUpdate

Like 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, just as when using 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.

Returns
Type Description
Mutation\Write|null

hasInsertOrUpdate

setInsertOrUpdate

Like 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, just as when using 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.

Parameter
Name Description
var Mutation\Write
Returns
Type Description
$this

getReplace

Like insert, except that if the row already exists, it is deleted, and the column values provided are inserted instead. Unlike 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.

Returns
Type Description
Mutation\Write|null

hasReplace

setReplace

Like insert, except that if the row already exists, it is deleted, and the column values provided are inserted instead. Unlike 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.

Parameter
Name Description
var Mutation\Write
Returns
Type Description
$this

getDelete

Delete rows from a table. Succeeds whether or not the named rows were present.

Returns
Type Description
Mutation\Delete|null

hasDelete

setDelete

Delete rows from a table. Succeeds whether or not the named rows were present.

Parameter
Name Description
var Mutation\Delete
Returns
Type Description
$this

getOperation

Returns
Type Description
string