def apply_primary_keys()

in src/databao_context_engine/plugins/databases/table_builder.py [0:0]


    def apply_primary_keys(self, pk_cols: list[dict] | None) -> None:
        pk_groups = group_rows(pk_cols, ("table_name", "constraint_name"))
        for (table_name, cname), grp in pk_groups.items():
            grp.sort(key=lambda r: sort_position_by_key(r, "position"))
            self.get_or_create_table(table_name).primary_key = KeyConstraint(
                name=cname,
                columns=[r["column_name"] for r in grp if r.get("column_name") is not None],
                validated=True,
            )