constraint progress

This commit is contained in:
2025-12-14 20:50:00 +01:00
parent 348f3a16d0
commit 9418f28348
14 changed files with 158 additions and 49 deletions
+5 -8
View File
@@ -110,7 +110,7 @@ utils::result<void, utils::error> schema::drop() const {
}
auto ctx = query::query::alter()
.table(node->name())
.drop_constraint("cons.name()")
.drop_constraint(cons)
.compile(*c);
std::cout << ctx.sql << std::endl;
@@ -128,7 +128,7 @@ utils::result<void, utils::error> schema::drop() const {
}
auto ctx = query::query::alter()
.table(node->name())
.drop_constraint("cons.name()")
.drop_constraint(cons)
.compile(*c);
std::cout << ctx.sql << std::endl;
@@ -185,16 +185,13 @@ sql::query_context schema::build_add_constraint_context( const object::repositor
if (cons.is_foreign_key_constraint()) {
return query::query::alter()
.table(node.name())
.add_constraint("cons.name()")
.foreign_key(cons.column_name())
.references(cons.ref_table_name(), {cons.ref_column_name()})
.add_constraint(cons)
.compile(*pool_.acquire());
}
if (cons.is_primary_key_constraint()) {
return query::query::alter()
.table(node.name())
.add_constraint("cons.name()")
.primary_key(cons.column_name())
.add_constraint(cons)
.compile(*pool_.acquire());
}
return {};
@@ -203,7 +200,7 @@ sql::query_context schema::build_add_constraint_context( const object::repositor
sql::query_context schema::build_drop_constraint_context( const object::repository_node& node, const class object::restriction& cons ) const {
return query::query::alter()
.table(node.name())
.drop_constraint("cons.name()")
.drop_constraint(cons)
.compile(*pool_.acquire());
}
}
+3 -6
View File
@@ -80,16 +80,13 @@ sql::query_context session::build_add_constraint_context(const std::string& tabl
if (cons.is_foreign_key_constraint()) {
return query::query::alter()
.table(table_name)
.add_constraint("cons.name()")
.foreign_key(cons.column_name())
.references(cons.ref_table_name(), {cons.ref_column_name()})
.add_constraint(cons)
.compile(*conn);
}
if (cons.is_primary_key_constraint()) {
return query::query::alter()
.table(table_name)
.add_constraint("cons.name()")
.primary_key(cons.column_name())
.add_constraint(cons)
.compile(*conn);
}
return {};
@@ -102,7 +99,7 @@ utils::result<void, utils::error> session::drop_schema() const {
for (const auto& cons : node->info().constraints()) {
auto ctx = query::query::alter()
.table(node->name())
.drop_constraint("cons.name()")
.drop_constraint(cons)
.compile(*c);
std::cout << ctx.sql << std::endl;