protected function loadTableForeignKeys($tableName)
    {
        static $actionTypes = [
            0 => 'CASCADE',
            1 => 'RESTRICT',
            2 => 'NO ACTION',
            3 => 'SET NULL',
        ];

        $foreignKeys = $this->db->getSlavePdo()->cubrid_schema(\PDO::CUBRID_SCH_IMPORTED_KEYS, $tableName);
        $foreignKeys = ArrayHelper::index($foreignKeys, null, 'FK_NAME');
        ArrayHelper::multisort($foreignKeys, 'KEY_SEQ', SORT_ASC, SORT_NUMERIC);
        $result = [];
        foreach ($foreignKeys as $name => $foreignKey) {
            $result[] = new ForeignKeyConstraint([
                'name' => $name,
                'columnNames' => ArrayHelper::getColumn($foreignKey, 'FKCOLUMN_NAME'),
                'foreignTableName' => $foreignKey[0]['PKTABLE_NAME'],
                'foreignColumnNames' => ArrayHelper::getColumn($foreignKey, 'PKCOLUMN_NAME'),
                'onDelete' => isset($actionTypes[$foreignKey[0]['DELETE_RULE']]) ? $actionTypes[$foreignKey[0]['DELETE_RULE']] : null,
                'onUpdate' => isset($actionTypes[$foreignKey[0]['UPDATE_RULE']]) ? $actionTypes[$foreignKey[0]['UPDATE_RULE']] : null,
            ]);
        }

        return $result;
    }
protected function loadTableForeignKeys($tableName)
    {
        static $actionTypes = [
            0 => 'CASCADE',
            1 => 'RESTRICT',
            2 => 'NO ACTION',
            3 => 'SET NULL',
        ];

        $foreignKeys = $this->db->getSlavePdo()->cubrid_schema(\PDO::CUBRID_SCH_IMPORTED_KEYS, $tableName);
        $foreignKeys = ArrayHelper::index($foreignKeys, null, 'FK_NAME');
        ArrayHelper::multisort($foreignKeys, 'KEY_SEQ', SORT_ASC, SORT_NUMERIC);
        $result = [];
        foreach ($foreignKeys as $name => $foreignKey) {
            $result[] = new ForeignKeyConstraint([
                'name' => $name,
                'columnNames' => ArrayHelper::getColumn($foreignKey, 'FKCOLUMN_NAME'),
                'foreignTableName' => $foreignKey[0]['PKTABLE_NAME'],
                'foreignColumnNames' => ArrayHelper::getColumn($foreignKey, 'PKCOLUMN_NAME'),
                'onDelete' => isset($actionTypes[$foreignKey[0]['DELETE_RULE']]) ? $actionTypes[$foreignKey[0]['DELETE_RULE']] : null,
                'onUpdate' => isset($actionTypes[$foreignKey[0]['UPDATE_RULE']]) ? $actionTypes[$foreignKey[0]['UPDATE_RULE']] : null,
            ]);
        }

        return $result;
    }
protected function loadTableForeignKeys ( $ tableName ) { static $ actionTypes = [ 0 => 'CASCADE' , 1 => 'RESTRICT' , 2 => 'NO ACTION' , 3 => 'SET NULL' , ] ; $ foreignKeys = $ this -> db -> getSlavePdo ( ) -> cubrid_schema ( \ PDO :: CUBRID_SCH_IMPORTED_KEYS , $ tableName ) ; $ foreignKeys = ArrayHelper :: index ( $ foreignKeys , null , 'FK_NAME' ) ; ArrayHelper :: multisort ( $ foreignKeys , 'KEY_SEQ' , SORT_ASC , SORT_NUMERIC ) ; $ result = [ ] ; foreach ( $ foreignKeys as $ name => $ foreignKey ) { $ result [ ] = new ForeignKeyConstraint ( [ 'name' => $ name , 'columnNames' => ArrayHelper :: getColumn ( $ foreignKey , 'FKCOLUMN_NAME' ) , 'foreignTableName' => $ foreignKey [ 0 ] [ 'PKTABLE_NAME' ] , 'foreignColumnNames' => ArrayHelper :: getColumn ( $ foreignKey , 'PKCOLUMN_NAME' ) , 'onDelete' => isset ( $ actionTypes [ $ foreignKey [ 0 ] [ 'DELETE_RULE' ] ] ) ? $ actionTypes [ $ foreignKey [ 0 ] [ 'DELETE_RULE' ] ] : null , 'onUpdate' => isset ( $ actionTypes [ $ foreignKey [ 0 ] [ 'UPDATE_RULE' ] ] ) ? $ actionTypes [ $ foreignKey [ 0 ] [ 'UPDATE_RULE' ] ] : null , ] ) ; } return $ result ; }
{@inheritdoc}
{