MCPcopy Create free account
hub / github.com/colmap/colmap / ExistsColumn

Method ExistsColumn

src/colmap/scene/database_sqlite.cc:2305–2327  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2303 }
2304
2305 bool ExistsColumn(const std::string& table_name,
2306 const std::string& column_name) const {
2307 const std::string sql =
2308 StringPrintf("PRAGMA table_info(%s);", table_name.c_str());
2309
2310 sqlite3_stmt* sql_stmt;
2311 SQLITE3_CALL(sqlite3_prepare_v2(
2312 THROW_CHECK_NOTNULL(database_), sql.c_str(), -1, &sql_stmt, 0));
2313
2314 bool exists_column = false;
2315 while (SQLITE3_CALL(sqlite3_step(sql_stmt)) == SQLITE_ROW) {
2316 const std::string result =
2317 reinterpret_cast<const char*>(sqlite3_column_text(sql_stmt, 1));
2318 if (column_name == result) {
2319 exists_column = true;
2320 break;
2321 }
2322 }
2323
2324 SQLITE3_CALL(sqlite3_finalize(sql_stmt));
2325
2326 return exists_column;
2327 }
2328
2329 bool ExistsRowId(sqlite3_stmt* sql_stmt, const sqlite3_int64 row_id) const {
2330 Sqlite3StmtContext context(sql_stmt);

Callers

nothing calls this directly

Calls 1

StringPrintfFunction · 0.85

Tested by

no test coverage detected