From 37855dc6fb8a6f7d4cae55c2a61c1f455a5b8034 Mon Sep 17 00:00:00 2001 From: sascha Date: Thu, 30 Apr 2026 15:49:54 +0200 Subject: [PATCH] fixed sequence table --- source/orm/query/basic_schema.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/source/orm/query/basic_schema.cpp b/source/orm/query/basic_schema.cpp index b383672..caac447 100644 --- a/source/orm/query/basic_schema.cpp +++ b/source/orm/query/basic_schema.cpp @@ -289,7 +289,7 @@ utils::result setup_primary_key_generator(const basic_schema const auto exec_result = create() .table("sequence_table") .columns({ - column("name", utils::basic_type::Varchar, 255), + column("name", utils::basic_type::Varchar, 255).not_null().primary_key(), column("next_id", utils::basic_type::Int64) }) .execute(conn); @@ -319,8 +319,14 @@ utils::result cleanup_primary_key_generator(const basic_sche return utils::failure(result.err()); } } else if (node.pk_generator().type() == utils::generator_type::Table) { - const auto result = drop().sequence(node.name() + "_pk_seq").execute(conn); - if (!result) { + if (const auto result = conn.exists(scm.name(), "sequence_table"); result) { + if (*result) { + const auto drop_result = drop().table("sequence_table").execute(conn); + if (!drop_result) { + return utils::failure(result.err()); + } + } + } else { return utils::failure(result.err()); } }