Symfony2/Doctrineのドキュメントは基本的に単一カラムを主キーとするテーブルが対象となっていて、複合主キーを持つテーブルに対する説明はかなり少なくて、あったとしてもサラっと流されてしまってる感じです。まあ、エラーメッセージでググれば情報は大概は出てくるんですが、情報があちこちに散らばってる状況です。 で、実際に複合主キーを持つテーブルに対するCRUDを作って、単一カラムの主キーの場合との違いをまとめてみました。 Bundleのソースコード一式はgithubに上げてあります。 Symfony2_sample/src/Acme/CompositePrimaryKeysBundle at master · shimooka/Symfony2_sample · GitHub 対象とするテーブル 以下のようなカラムkey1、key2が主キーとなるテーブル(composite_keys)