The KeySet class is a regular type that represents a collection of Keys.
Users can construct a KeySet instance, then add Keys and ranges of Keys to the set. The caller is responsible for ensuring that all keys in a given KeySet instance contain the same number and types of values.
Users may also optionally construct an instance that represents all keys with KeySet::All().
Example
auto delete_albums = spanner::DeleteMutationBuilder( "Albums", spanner::KeySet() .AddKey(spanner::MakeKey(2,1)) .AddKey(spanner::MakeKey(2,3))) .Build();
// Delete all the performances, venues, albums and singers. auto commit = client.Commit(spanner::Mutations{ spanner::MakeDeleteMutation("Performances", spanner::KeySet::All()), spanner::MakeDeleteMutation("Venues", spanner::KeySet::All()), spanner::MakeDeleteMutation("Albums", spanner::KeySet::All()), spanner::MakeDeleteMutation("Singers", spanner::KeySet::All()), }); if(!commit)throw std::move(commit).status(); std::cout <<"delete-all was successful\n"; }
// Delete all the performances, venues, albums and singers. auto commit = client.Commit(spanner::Mutations{ spanner::MakeDeleteMutation("Performances", spanner::KeySet::All()), spanner::MakeDeleteMutation("Venues", spanner::KeySet::All()), spanner::MakeDeleteMutation("Albums", spanner::KeySet::All()), spanner::MakeDeleteMutation("Singers", spanner::KeySet::All()), }); if(!commit)throw std::move(commit).status(); std::cout <<"delete-all was successful\n"; }
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-04-23 UTC."],[[["This document outlines the `KeySet` class in the Google Cloud Spanner C++ library, focusing on its role in managing collections of keys."],["The `KeySet` class allows users to add individual keys via `AddKey(Key)` and ranges of keys through `AddRange(KeyBound, KeyBound)`, to a collection of keys."],["Users can also represent a set of all keys with `KeySet::All()`, and the examples showcase its usage in deleting all rows from a table."],["The `KeySet` instances must have keys that share the same number and types of values, and it can also be constructed as an empty set using `KeySet()`."],["The page also contains version information of the `KeySet` class, beginning with `2.11.0` up to the latest release candidate `2.37.0-rc`."]]],[]]