35#include <sqlpp23/core/basic/table.h>
36#include <sqlpp23/core/basic/table_columns.h>
37#include <sqlpp23/core/name/create_name_tag.h>
38#include <sqlpp23/core/type_traits.h>
40namespace iceberg::sql {
48 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(catalog_name, catalogName);
49 using data_type = ::sqlpp::text;
50 using has_default = std::false_type;
53 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(table_namespace, tableNamespace);
54 using data_type = ::sqlpp::text;
55 using has_default = std::false_type;
58 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(table_name, tableName);
59 using data_type = ::sqlpp::text;
60 using has_default = std::false_type;
63 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(metadata_location, metadataLocation);
64 using data_type = std::optional<::sqlpp::text>;
65 using has_default = std::true_type;
68 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(previous_metadata_location,
69 previousMetadataLocation);
70 using data_type = std::optional<::sqlpp::text>;
71 using has_default = std::true_type;
74 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(iceberg_type, recordType);
75 using data_type = std::optional<::sqlpp::text>;
76 using has_default = std::true_type;
79 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(iceberg_tables, icebergTables);
82 using _table_columns = sqlpp::table_columns<T,
89 using _required_insert_columns = sqlpp::detail::type_set<
90 sqlpp::column_t<sqlpp::table_t<IcebergTables_>,
CatalogName>,
92 sqlpp::column_t<sqlpp::table_t<IcebergTables_>,
TableName>>;
94using IcebergTables = ::sqlpp::table_t<IcebergTables_>;
98 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(catalog_name, catalogName);
99 using data_type = ::sqlpp::text;
100 using has_default = std::false_type;
104 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(
namespace, ns);
105 using data_type = ::sqlpp::text;
106 using has_default = std::false_type;
109 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(property_key, propertyKey);
110 using data_type = ::sqlpp::text;
111 using has_default = std::false_type;
114 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(property_value, propertyValue);
115 using data_type = std::optional<::sqlpp::text>;
116 using has_default = std::true_type;
119 SQLPP_CREATE_NAME_TAG_FOR_SQL_AND_CPP(iceberg_namespace_properties,
120 icebergNamespaceProperties);
122 template <
typename T>
123 using _table_columns = sqlpp::table_columns<T,
128 using _required_insert_columns = sqlpp::detail::type_set<
129 sqlpp::column_t<sqlpp::table_t<IcebergNamespaceProperties_>,
CatalogName>,
130 sqlpp::column_t<sqlpp::table_t<IcebergNamespaceProperties_>,
Namespace>,
131 sqlpp::column_t<sqlpp::table_t<IcebergNamespaceProperties_>,
PropertyKey>>;
133using IcebergNamespaceProperties = ::sqlpp::table_t<IcebergNamespaceProperties_>;
Definition sql_catalog_tables_internal.h:97
Definition sql_catalog_tables_internal.h:102
Definition sql_catalog_tables_internal.h:108
Definition sql_catalog_tables_internal.h:113
Definition sql_catalog_tables_internal.h:96
Definition sql_catalog_tables_internal.h:47
Definition sql_catalog_tables_internal.h:73
Definition sql_catalog_tables_internal.h:57
Definition sql_catalog_tables_internal.h:52
Definition sql_catalog_tables_internal.h:46