Class: Google::Spanner::V1::Mutation

Inherits:
Object
  • Object
show all
Defined in:
lib/google/cloud/spanner/v1/doc/google/spanner/v1/mutation.rb

Overview

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.

Defined Under Namespace

Classes: Delete, Write

Instance Attribute Summary collapse

Instance Attribute Details

#deleteGoogle::Spanner::V1::Mutation::Delete

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

Returns:



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/google/cloud/spanner/v1/doc/google/spanner/v1/mutation.rb', line 44

class Mutation
  # Arguments to {Google::Spanner::V1::Mutation#insert insert}, {Google::Spanner::V1::Mutation#update update}, {Google::Spanner::V1::Mutation#insert_or_update insert_or_update}, and
  # {Google::Spanner::V1::Mutation#replace replace} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be written.
  # @!attribute [rw] columns
  #   @return [Array<String>]
  #     The names of the columns in {Google::Spanner::V1::Mutation::Write#table table} to be written.
  #
  #     The list of columns must contain enough columns to allow
  #     Cloud Spanner to derive values for all primary key columns in the
  #     row(s) to be modified.
  # @!attribute [rw] values
  #   @return [Array<Google::Protobuf::ListValue>]
  #     The values to be written. +values+ can contain more than one
  #     list of values. If it does, then multiple rows are written, one
  #     for each entry in +values+. Each list in +values+ must have
  #     exactly as many entries as there are entries in {Google::Spanner::V1::Mutation::Write#columns columns}
  #     above. Sending multiple lists is equivalent to sending multiple
  #     +Mutation+s, each containing one +values+ entry and repeating
  #     {Google::Spanner::V1::Mutation::Write#table table} and {Google::Spanner::V1::Mutation::Write#columns columns}. Individual values in each list are
  #     encoded as described {Google::Spanner::V1::TypeCode here}.
  class Write; end

  # Arguments to {Google::Spanner::V1::Mutation#delete delete} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be deleted.
  # @!attribute [rw] key_set
  #   @return [Google::Spanner::V1::KeySet]
  #     Required. The primary keys of the rows within {Google::Spanner::V1::Mutation::Delete#table table} to delete.
  class Delete; end
end

#insertGoogle::Spanner::V1::Mutation::Write

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

Returns:



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/google/cloud/spanner/v1/doc/google/spanner/v1/mutation.rb', line 44

class Mutation
  # Arguments to {Google::Spanner::V1::Mutation#insert insert}, {Google::Spanner::V1::Mutation#update update}, {Google::Spanner::V1::Mutation#insert_or_update insert_or_update}, and
  # {Google::Spanner::V1::Mutation#replace replace} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be written.
  # @!attribute [rw] columns
  #   @return [Array<String>]
  #     The names of the columns in {Google::Spanner::V1::Mutation::Write#table table} to be written.
  #
  #     The list of columns must contain enough columns to allow
  #     Cloud Spanner to derive values for all primary key columns in the
  #     row(s) to be modified.
  # @!attribute [rw] values
  #   @return [Array<Google::Protobuf::ListValue>]
  #     The values to be written. +values+ can contain more than one
  #     list of values. If it does, then multiple rows are written, one
  #     for each entry in +values+. Each list in +values+ must have
  #     exactly as many entries as there are entries in {Google::Spanner::V1::Mutation::Write#columns columns}
  #     above. Sending multiple lists is equivalent to sending multiple
  #     +Mutation+s, each containing one +values+ entry and repeating
  #     {Google::Spanner::V1::Mutation::Write#table table} and {Google::Spanner::V1::Mutation::Write#columns columns}. Individual values in each list are
  #     encoded as described {Google::Spanner::V1::TypeCode here}.
  class Write; end

  # Arguments to {Google::Spanner::V1::Mutation#delete delete} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be deleted.
  # @!attribute [rw] key_set
  #   @return [Google::Spanner::V1::KeySet]
  #     Required. The primary keys of the rows within {Google::Spanner::V1::Mutation::Delete#table table} to delete.
  class Delete; end
end

#insert_or_updateGoogle::Spanner::V1::Mutation::Write

Returns 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.

Returns:

  • (Google::Spanner::V1::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.



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/google/cloud/spanner/v1/doc/google/spanner/v1/mutation.rb', line 44

class Mutation
  # Arguments to {Google::Spanner::V1::Mutation#insert insert}, {Google::Spanner::V1::Mutation#update update}, {Google::Spanner::V1::Mutation#insert_or_update insert_or_update}, and
  # {Google::Spanner::V1::Mutation#replace replace} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be written.
  # @!attribute [rw] columns
  #   @return [Array<String>]
  #     The names of the columns in {Google::Spanner::V1::Mutation::Write#table table} to be written.
  #
  #     The list of columns must contain enough columns to allow
  #     Cloud Spanner to derive values for all primary key columns in the
  #     row(s) to be modified.
  # @!attribute [rw] values
  #   @return [Array<Google::Protobuf::ListValue>]
  #     The values to be written. +values+ can contain more than one
  #     list of values. If it does, then multiple rows are written, one
  #     for each entry in +values+. Each list in +values+ must have
  #     exactly as many entries as there are entries in {Google::Spanner::V1::Mutation::Write#columns columns}
  #     above. Sending multiple lists is equivalent to sending multiple
  #     +Mutation+s, each containing one +values+ entry and repeating
  #     {Google::Spanner::V1::Mutation::Write#table table} and {Google::Spanner::V1::Mutation::Write#columns columns}. Individual values in each list are
  #     encoded as described {Google::Spanner::V1::TypeCode here}.
  class Write; end

  # Arguments to {Google::Spanner::V1::Mutation#delete delete} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be deleted.
  # @!attribute [rw] key_set
  #   @return [Google::Spanner::V1::KeySet]
  #     Required. The primary keys of the rows within {Google::Spanner::V1::Mutation::Delete#table table} to delete.
  class Delete; end
end

#replaceGoogle::Spanner::V1::Mutation::Write

Returns 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+.

Returns:



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/google/cloud/spanner/v1/doc/google/spanner/v1/mutation.rb', line 44

class Mutation
  # Arguments to {Google::Spanner::V1::Mutation#insert insert}, {Google::Spanner::V1::Mutation#update update}, {Google::Spanner::V1::Mutation#insert_or_update insert_or_update}, and
  # {Google::Spanner::V1::Mutation#replace replace} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be written.
  # @!attribute [rw] columns
  #   @return [Array<String>]
  #     The names of the columns in {Google::Spanner::V1::Mutation::Write#table table} to be written.
  #
  #     The list of columns must contain enough columns to allow
  #     Cloud Spanner to derive values for all primary key columns in the
  #     row(s) to be modified.
  # @!attribute [rw] values
  #   @return [Array<Google::Protobuf::ListValue>]
  #     The values to be written. +values+ can contain more than one
  #     list of values. If it does, then multiple rows are written, one
  #     for each entry in +values+. Each list in +values+ must have
  #     exactly as many entries as there are entries in {Google::Spanner::V1::Mutation::Write#columns columns}
  #     above. Sending multiple lists is equivalent to sending multiple
  #     +Mutation+s, each containing one +values+ entry and repeating
  #     {Google::Spanner::V1::Mutation::Write#table table} and {Google::Spanner::V1::Mutation::Write#columns columns}. Individual values in each list are
  #     encoded as described {Google::Spanner::V1::TypeCode here}.
  class Write; end

  # Arguments to {Google::Spanner::V1::Mutation#delete delete} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be deleted.
  # @!attribute [rw] key_set
  #   @return [Google::Spanner::V1::KeySet]
  #     Required. The primary keys of the rows within {Google::Spanner::V1::Mutation::Delete#table table} to delete.
  class Delete; end
end

#updateGoogle::Spanner::V1::Mutation::Write

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

Returns:



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/google/cloud/spanner/v1/doc/google/spanner/v1/mutation.rb', line 44

class Mutation
  # Arguments to {Google::Spanner::V1::Mutation#insert insert}, {Google::Spanner::V1::Mutation#update update}, {Google::Spanner::V1::Mutation#insert_or_update insert_or_update}, and
  # {Google::Spanner::V1::Mutation#replace replace} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be written.
  # @!attribute [rw] columns
  #   @return [Array<String>]
  #     The names of the columns in {Google::Spanner::V1::Mutation::Write#table table} to be written.
  #
  #     The list of columns must contain enough columns to allow
  #     Cloud Spanner to derive values for all primary key columns in the
  #     row(s) to be modified.
  # @!attribute [rw] values
  #   @return [Array<Google::Protobuf::ListValue>]
  #     The values to be written. +values+ can contain more than one
  #     list of values. If it does, then multiple rows are written, one
  #     for each entry in +values+. Each list in +values+ must have
  #     exactly as many entries as there are entries in {Google::Spanner::V1::Mutation::Write#columns columns}
  #     above. Sending multiple lists is equivalent to sending multiple
  #     +Mutation+s, each containing one +values+ entry and repeating
  #     {Google::Spanner::V1::Mutation::Write#table table} and {Google::Spanner::V1::Mutation::Write#columns columns}. Individual values in each list are
  #     encoded as described {Google::Spanner::V1::TypeCode here}.
  class Write; end

  # Arguments to {Google::Spanner::V1::Mutation#delete delete} operations.
  # @!attribute [rw] table
  #   @return [String]
  #     Required. The table whose rows will be deleted.
  # @!attribute [rw] key_set
  #   @return [Google::Spanner::V1::KeySet]
  #     Required. The primary keys of the rows within {Google::Spanner::V1::Mutation::Delete#table table} to delete.
  class Delete; end
end