Obtén o crea una familia de columnas
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
Si no existe una familia de columnas, crea una de forma automática.
Muestra de código
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],[],[[["\u003cp\u003eThis code snippet demonstrates how to automatically create a column family in Bigtable if it does not already exist.\u003c/p\u003e\n"],["\u003cp\u003eThe code uses the Bigtable Admin client library to check for the existence of a specified column family.\u003c/p\u003e\n"],["\u003cp\u003eIf the column family is not found, the code proceeds to create it with a maximum of 5 versions.\u003c/p\u003e\n"],["\u003cp\u003eThe sample also shows you how to retrieve the column family details.\u003c/p\u003e\n"],["\u003cp\u003eThe code sample can be used to learn about installing and using the Bigtable client library, and setting up authentication for a local development environment.\u003c/p\u003e\n"]]],[],null,["Autocreate a column family if it does not exist.\n\nCode sample \n\nC++\n\n\nTo learn how to install and use the client library for Bigtable, see\n[Bigtable client libraries](/bigtable/docs/reference/libraries).\n\n\nTo authenticate to Bigtable, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n namespace cbt = ::google::cloud::bigtable;\n namespace cbta = ::google::cloud::bigtable_admin;\n using ::google::bigtable::admin::v2::ModifyColumnFamiliesRequest;\n using ::google::cloud::StatusOr;\n [](cbta::BigtableTableAdminClient admin, std::string const& project_id,\n std::string const& instance_id, std::string const& table_id,\n std::string const& family_name) {\n std::string table_name = cbt::TableName(project_id, instance_id, table_id);\n\n google::bigtable::admin::v2::GetTableRequest r;\n r.set_name(table_name);\n r.set_view(google::bigtable::admin::v2::Table::FULL);\n\n StatusOr\u003cgoogle::bigtable::admin::v2::Table\u003e schema =\n admin.GetTable(std::move(r));\n\n if (!schema) throw std::move(schema).status();\n auto pos = schema-\u003ecolumn_families().find(family_name);\n if (pos == schema-\u003ecolumn_families().end()) {\n // Try to create the column family instead:\n ModifyColumnFamiliesRequest::Modification mod;\n mod.set_id(family_name);\n mod.mutable_create()-\u003emutable_gc_rule()-\u003eset_max_num_versions(5);\n\n auto modified = admin.ModifyColumnFamilies(table_name, {std::move(mod)});\n if (!modified) throw std::move(schema).status();\n schema = *std::move(modified);\n pos = schema-\u003ecolumn_families().find(family_name);\n }\n\n if (pos == schema-\u003ecolumn_families().end()) {\n throw std::runtime_error(\"GetOrCreateFamily failed\");\n }\n\n google::bigtable::admin::v2::ColumnFamily family = pos-\u003esecond;\n std::cout \u003c\u003c \"Column family name: \" \u003c\u003c pos-\u003efirst\n \u003c\u003c \"\\nColumn family details: \" \u003c\u003c family.DebugString() \u003c\u003c \"\\n\";\n }\n\nWhat's next\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=bigtable)."]]