This is container-dependent. The deployer uses the container provider�s tools to map the persistent fields and relationships defined by the abstract persistence schema to a database or other persistent store. Once this is done, the tool generates the classes and interfaces that enable the container to manage the persistent fields and relationships of the entity bean instances at runtime.
Typically, you might expect a major container provider to support DB2 8.1, Microsoft SQL Server 2000, Oracle 8.1.7, Oracle 9.2.0, PointBase 4.4 and Sybase 12.5.
So long as a database has a JDBC driver, a container should be able to support it. Strictly speaking it doesn't even have to be an XA driver, although without XA support you won't be able to have transactions that rollback automatically properly across multiple resource managers.