insert_query_builder progress

This commit is contained in:
2026-04-12 22:07:24 +02:00
parent f03664d60a
commit a0326632ab
25 changed files with 319 additions and 124 deletions
+15 -15
View File
@@ -58,19 +58,19 @@ TEST_CASE("Test insert builder has many", "[query][insert_query_builder][has_man
.and_then( [&scm] { return scm.attach<author>("authors"); } );
REQUIRE(result.is_ok());
auto s_king = make_object<author>(1, "Steven", "King", "21.9.1947", 1956, false);
s_king->books.push_back(make_object<book>(2, "Carrie", object_ptr<author>{}, 1974));
s_king->books.push_back(make_object<book>(3, "The Shining", object_ptr<author>{}, 1977));
s_king->books.push_back(make_object<book>(4, "It", object_ptr<author>{}, 1986));
s_king->books.push_back(make_object<book>(5, "Misery", object_ptr<author>{}, 1987));
s_king->books.push_back(make_object<book>(6, "The Dark Tower: The Gunslinger", object_ptr<author>{}, 1982));
insert_query_builder iqb(scm);
auto build_result = iqb.build(s_king);
REQUIRE(build_result.is_ok());
const auto& stmts = *build_result;
REQUIRE(stmts.size() == 1);
// auto s_king = make_object<author>(1, "Steven", "King", "21.9.1947", 1956, false);
//
// s_king->books.push_back(make_object<book>(2, "Carrie", object_ptr<author>{}, 1974));
// s_king->books.push_back(make_object<book>(3, "The Shining", object_ptr<author>{}, 1977));
// s_king->books.push_back(make_object<book>(4, "It", object_ptr<author>{}, 1986));
// s_king->books.push_back(make_object<book>(5, "Misery", object_ptr<author>{}, 1987));
// s_king->books.push_back(make_object<book>(6, "The Dark Tower: The Gunslinger", object_ptr<author>{}, 1982));
//
// insert_query_builder iqb(scm);
//
// auto build_result = iqb.build(s_king);
// REQUIRE(build_result.is_ok());
//
// const auto& stmts = *build_result;
// REQUIRE(stmts.size() == 1);
}
+1 -1
View File
@@ -73,7 +73,7 @@ TEST_CASE_METHOD(QueryFixture, "Test create table sql statement string", "[query
constraint("PK_person").primary_key({"id"}),
constraint("FK_person_address").foreign_key({"address"}).references("address", {"id"})
})
.compile(*db);
.compile(db->dialect());
REQUIRE(ctx.sql == R"##(CREATE TABLE "person" ("id" BIGINT NOT NULL, "name" VARCHAR(255) NOT NULL UNIQUE, "age" INTEGER NOT NULL, "address" BIGINT NOT NULL, CONSTRAINT PK_person PRIMARY KEY (id), CONSTRAINT FK_person_address FOREIGN KEY (address) REFERENCES address (id)))##");
}