I was searching for a way to define the zend table with multiple keys, and it seems it works just fine as an array. Somehow I doubt it.
"The Zend_Db_Table_Abstract class stores primary keys as an array and many operations $_primary as an array.
However, currently the insert() method of Zend_Db_Table_Abstract still assumes that the insert operation will generate a primary key value, and this value can be retrieved by using lastInsertId(). This is true only for server-side auto-generated id columns, such as AUTO_INCREMENT in MySQL. This does not work for Oracle, PostgreSQL, or DB2. It also doesn't work for MySQL or any RDBMS for tables that have compound or natural keys.
Also, the __set() method of Zend_Db_Table_Row_Abstract assumes that it is illegal to set the primary key value of a row explicity, and the save() method assumes that the only time that it should insert a row instead of update it is when the primary key column(s) are empty."