Cloud Spanner C++ Client Library

The Cloud Spanner C++ Client library offers types and functions to use Cloud Spanner from C++ applications.

Quickstart

The following "Hello World" program should give you a sense of how to use this library. This program is also used to illustrate how to incorporate the library into your project.

#include "google/cloud/spanner/client.h"#include <iostream>int main(int argc, char* argv[]) {  if (argc != 4) {    std::cerr << "Usage: " << argv[0]              << " project-id instance-id database-id\n";    return 1;  }  namespace spanner = ::google::cloud::spanner;  spanner::Client client(      spanner::MakeConnection(spanner::Database(argv[1], argv[2], argv[3])));  auto rows =      client.ExecuteQuery(spanner::SqlStatement("SELECT 'Hello World'"));  for (auto const& row : spanner::StreamOf<std::tuple<std::string>>(rows)) {    if (!row) {      std::cerr << row.status() << "\n";      return 1;    }    std::cout << std::get<0>(*row) << "\n";  }  return 0;}

More Information

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-12-18 UTC.