+2  A: 

I think that the subtype's PK field should be removed (as it inherits it from its supertype).

That said, this isn't a good inheritance candidate. Entity inheritance should only be performed if the type can't change for an entity. This is more a 'role' candidate, so a real 1:1 relationship. The thing is that User might lose / gain the Premium role on a regular basis, but you can't change a type of an existing entity instance (== table rows) even if it seems like you can by simply altering the data in the database. Inheritance mapping is about strict rules, you can't bend them, as inheritance in entities is about interpreting data in a database, as relational models don't know the concept of inheritance (although some databases 'cheat' by allowing inheritance in DDL SQL like postgresql)

Frans Bouma
The PremiumUser entity doesn't contain a PK, because of the inheritance per hierarchy. All the columns are in the supertype, User entity.i see, that my design desicion is not so good, i have to think about how to change this.Thx Frans for your answer :-)
Mariusz