db->tableExists('print_requests') || ! $this->db->tableExists('classSection')) { return; } $db = \Config\Database::connect(); $keys = $db->getForeignKeyData('print_requests'); foreach ($keys as $key) { if ($key->constraint_name === 'print_requests_class_id_foreign') { return; } } $this->forge->addForeignKey('class_id', 'classSection', 'class_id', 'CASCADE', 'CASCADE'); $this->forge->processIndexes('print_requests'); } public function down() { if (! $this->db->tableExists('print_requests')) { return; } try { $this->forge->dropForeignKey('print_requests', 'print_requests_class_id_foreign'); } catch (\Throwable $e) { // Already absent. } } }