Code Duplication    Length = 24-25 lines in 2 locations

src/Phinx/Db/Adapter/MysqlAdapter.php 1 location

@@ 1063-1086 (lines=24) @@
1060
     * @param \Phinx\Db\Table\ForeignKey $foreignKey
1061
     * @return string
1062
     */
1063
    protected function getForeignKeySqlDefinition(ForeignKey $foreignKey)
1064
    {
1065
        $def = '';
1066
        if ($foreignKey->getConstraint()) {
1067
            $def .= ' CONSTRAINT ' . $this->quoteColumnName($foreignKey->getConstraint());
1068
        }
1069
        $columnNames = [];
1070
        foreach ($foreignKey->getColumns() as $column) {
1071
            $columnNames[] = $this->quoteColumnName($column);
1072
        }
1073
        $def .= ' FOREIGN KEY (' . implode(',', $columnNames) . ')';
1074
        $refColumnNames = [];
1075
        foreach ($foreignKey->getReferencedColumns() as $column) {
1076
            $refColumnNames[] = $this->quoteColumnName($column);
1077
        }
1078
        $def .= ' REFERENCES ' . $this->quoteTableName($foreignKey->getReferencedTable()->getName()) . ' (' . implode(',', $refColumnNames) . ')';
1079
        if ($foreignKey->getOnDelete()) {
1080
            $def .= ' ON DELETE ' . $foreignKey->getOnDelete();
1081
        }
1082
        if ($foreignKey->getOnUpdate()) {
1083
            $def .= ' ON UPDATE ' . $foreignKey->getOnUpdate();
1084
        }
1085
1086
        return $def;
1087
    }
1088
1089
    /**

src/Phinx/Db/Adapter/SQLiteAdapter.php 1 location

@@ 1053-1077 (lines=25) @@
1050
     * @param \Phinx\Db\Table\ForeignKey $foreignKey
1051
     * @return string
1052
     */
1053
    protected function getForeignKeySqlDefinition(ForeignKey $foreignKey)
1054
    {
1055
        $def = '';
1056
        if ($foreignKey->getConstraint()) {
1057
            $def .= ' CONSTRAINT ' . $this->quoteColumnName($foreignKey->getConstraint());
1058
        } else {
1059
            $columnNames = [];
1060
            foreach ($foreignKey->getColumns() as $column) {
1061
                $columnNames[] = $this->quoteColumnName($column);
1062
            }
1063
            $def .= ' FOREIGN KEY (' . implode(',', $columnNames) . ')';
1064
            $refColumnNames = [];
1065
            foreach ($foreignKey->getReferencedColumns() as $column) {
1066
                $refColumnNames[] = $this->quoteColumnName($column);
1067
            }
1068
            $def .= ' REFERENCES ' . $this->quoteTableName($foreignKey->getReferencedTable()->getName()) . ' (' . implode(',', $refColumnNames) . ')';
1069
            if ($foreignKey->getOnDelete()) {
1070
                $def .= ' ON DELETE ' . $foreignKey->getOnDelete();
1071
            }
1072
            if ($foreignKey->getOnUpdate()) {
1073
                $def .= ' ON UPDATE ' . $foreignKey->getOnUpdate();
1074
            }
1075
        }
1076
1077
        return $def;
1078
    }
1079
}
1080