Cayenne User Documentation
Custom DbAdapter

How do I write an adapter to support a database that is not yet supported?

You need to implement a custom DbAdapter. Most likely you won't have to do it from scratch and can extend a JdbcAdapter or one of the existing db-specific adapters.

(Optional) things to do before you start:
Implementation procedure is roughly the following:
It is a good idea to put all new adapter code in its own Java package, e.g. org.apache.cayenne.dba.mydb, as default resource loading depends on that.
Correct mapping is needed for the Modeler to do schema generation. Techically it is not required for the runtime. However types.xml should still be there.
.