redwarrior’s diary

C#, ASP.NET, WEB, G*などの雑多な情報

(小ネタ)Table-Per-Hierarchy とは

仕事の都合やら、質の高い内容を書こうとしたせいで、4か月近く更新が出来ていませんでした。今日からリフレッシュして、改めて気負わずに記事を書いていきたいと思います。

Entity Framework 6とEntity Framework Coreの違いを紹介した記事を読んでいて、その中でEntity Framework Coreは、Table-Per-Hierarchy (TPH) のみ対応という記述が出てきた。

Feature Comparison | Microsoft Docs

Table-Per-Hierarchyとは何だろう?と思って調べてみると、書籍「SQLアンチパターン」の5章で紹介されているシングルテーブル継承(Single Table Inheritance)の事だという事がわかった。

Entity Frameworkでサポートしているのは驚きだった。でも、なんでわざわざ別の名前をつけたのだろうか。HibernateJavaのO/Rマッパー)でも同じ名前が使われているみたいだが、新たなパターンかと思ってしまった。