diff --git a/mitm_tooling/representation/sql_representation.py b/mitm_tooling/representation/sql_representation.py
index fdb691e1e54ae24242d567cf373e8598c6cb02d1..6ab8a3db689b0524b34a91f470fc3fe1cb4d0c2c 100644
--- a/mitm_tooling/representation/sql_representation.py
+++ b/mitm_tooling/representation/sql_representation.py
@@ -237,7 +237,8 @@ _view_generators: tuple[MitMDBViewsGenerator, ...] = (_gen_denormalized_views,)
 
 def mk_sql_rep_schema(header: Header,
                       view_generators: Iterable[MitMDBViewsGenerator] | None = (_gen_denormalized_views,),
-                      override_schema: SchemaName | None = None) -> SQLRepresentationSchema:
+                      override_schema: SchemaName | None = None,
+                      skip_fk_constraints: bool = False) -> SQLRepresentationSchema:
     schema_name = override_schema if override_schema else SQL_REPRESENTATION_DEFAULT_SCHEMA
     mitm_def = get_mitm_def(header.mitm)
     meta = sa.MetaData(schema=schema_name)
@@ -246,6 +247,7 @@ def mk_sql_rep_schema(header: Header,
     type_tables: ConceptTypeTablesDict = {}
     views: dict[str, sa.Table] = {}
 
+    base_schema_item_generators = (_gen_unique_constraint, _gen_pk_constraint, _gen_index,)
     for concept in mitm_def.main_concepts:
         concept_properties, concept_relations = mitm_def.get(concept)
 
@@ -264,10 +266,11 @@ def mk_sql_rep_schema(header: Header,
             'foreign': lambda: [(name, sa.Column(name, dt.sa_sql_type)) for _, resolved_fk in
                                 mitm_def.resolve_foreign_types(concept).items() for name, dt in
                                 resolved_fk.items()]
-        }, additional_column_generators=(_gen_within_concept_id_col,), schema_item_generators=(
-            _gen_unique_constraint, _gen_pk_constraint, _gen_index,), override_schema=schema_name)
+        }, additional_column_generators=(_gen_within_concept_id_col,), schema_item_generators=base_schema_item_generators, override_schema=schema_name)
         concept_tables[concept] = t
 
+    type_table_schema_item_generators = base_schema_item_generators + (
+        _gen_foreign_key_constraints,) if not skip_fk_constraints else base_schema_item_generators
     for he in header.header_entries:
         he_concept = he.concept
         if has_type_tables(header.mitm, he_concept):
@@ -291,9 +294,7 @@ def mk_sql_rep_schema(header: Header,
                 'attributes': lambda: [(name, sa.Column(name, dt.sa_sql_type)) for name, dt in
                                        zip(he.attributes, he.attribute_dtypes)],
             }, additional_column_generators=(_gen_within_concept_id_col,),
-                                                   schema_item_generators=(
-                                                       _gen_unique_constraint, _gen_pk_constraint, _gen_index,
-                                                       _gen_foreign_key_constraints),
+                                                   schema_item_generators=type_table_schema_item_generators,
                                                    override_schema=schema_name)
 
             if he_concept not in type_tables: