Abstract. We examine the maintenance of data consistency in the presence of application-database interactions. Currently, a programmer must insert explicit checks to ensure that data are consistent with respect to the application’s and the database’s requirements. This explicit handcoding of integrity constraint checks is error-prone and results in less maintainable code when the integrity constraints on the application or the database change. We describe an architecture for automatically generating application-level checks from application and database integrity constraint specifications. We focus on EJB-database interactions as a concrete context for our work, but our results are applicable to other programming language-database interactions.