Several proposals have been published in recent years for database programming languages (DBPLs), many of which have been object-oriented. Our goal in this paper is not to argue for or against specific solutions, but simply to provide a framework for comparing certain critical points of type system design. This framework may be used in the description of a DBPL. It is our hope that the framework will promote clear communication among designers and developers of DBPLs.