This paper proposes a denotational semantics of types for database objects. A simple typed language to represent database objects is defined and its denotational semantics is given. In this language, sets are first-class values and a join and a projection are available as typed operations on general data structures including sets. For database objects, individual types correspond to partially ordered sets, which we shall call description domains. In order to type-check expressions involving joins and projections, an ordering is defined on the set of types in the language. This ordering is interpreted as a relation on description domains induced by embedding-projection pairs. A semantic space of types is then defined as a set of description domains partially ordered by that relation. The type system is shown to be sound and complete with respect to the semantics. It is also shown that the semantic space of types for database objects can be embedded in a semantic domain of an ML-like programming language. This guarantees that the type system for database objects can be safely integrated in a type system of an ML-like strongly typed programming language.