$db->addTable($Person); $db->addTable($Address); $db->addTable($Phone); $db->addTable($PersonAddress); $db->addTable($PersonPhone); $db->addTable($Street); // Add references to DB_Table_Database object $db->addRef('PersonAddress', 'PersonID2', 'Person', null, 'cascade', 'cascade'); $db->addRef('PersonAddress', 'AddressID', 'Address', null, 'cascade', 'cascade'); $db->addRef('PersonPhone', 'PersonID', 'Person', null, 'cascade', 'cascade'); $db->addRef('PersonPhone', 'PhoneID', 'Phone', null, 'cascade', 'cascade'); $db->addRef('Address', array('Street', 'City', 'StateAbb'), 'Street', array('Street', 'City', 'StateAbb'), 'cascade', 'cascade'); // Add links PersonPhone and PersonAddress $db->addAllLinks(); // Enable foreign key validation by PHP layer $db->setCheckFKey(true); # List of tables in database $table = array($Person, $Address, $Phone, $PersonAddress, $PersonPhone, $Street); // Expected property array values after finalization $primary_key = array(); $primary_key['Person'] = 'PersonID'; $primary_key['Address'] = 'AddressID'; $primary_key['Phone'] = 'PhoneID'; $primary_key['PersonAddress'] = null; $primary_key['PersonPhone'] = null; $primary_key['Street'] = array('Street', 'City', 'StateAbb'); $table_subclass = array(); $table_subclass['Person'] = null; $table_subclass['Address'] = null; $table_subclass['Phone'] = null; $table_subclass['PersonAddress'] = null;