Zmień nazwę nazwy kolumny za pomocą laravel Migracja z pomocą doctrine/dbal daje błąd

Próbuję zmienić nazwę kolumny bazy danych w moim localhost, później zrób to w rozwoju i produkcji

używam laravel 5 i zainstalowany doctrine dbal.

Mój kod migracji:


$table->renameColumn/'puesto', 'aux'/;


Po uruchomieniu
php artisan migrate

, Mówi mi to


[Doctrine\DBAL\DBALException] 
Unknown database type json requested, Doctrine\DBAL\Platforms\PostgreSqlPlatform may not support it.


Kolumna, której próbuję zmienić nazwę, nawet json, Chociaż w tabeli jest kolumna json, W rzeczywistości nazywa się tylko jeden 'alianzas'.
Moje pytanie brzmi, jak mogę zmienić nazwy kolumn z migracji, a nie ręcznie w bazie danych.
Zaproszony:

Marcin

Potwierdzenie od:

Wygląda na to że
laravel

Oferuje tylko instalację.

Możesz go ustawić:


composer require doctrine/dbal

Leszek

Potwierdzenie od:

Zmiana kolumn

Wymagania wstępne.

Przed zmianą kolumny należy dodać zależność

doctrine/dbal

w

plik composer.json. Biblioteka Doctrine DBAL Używane do określania aktualnego stanu kolumny i tworzyć żądania SQL, konieczne, aby dokonać określonych zmian w kolumnie.


"require": {
"doctrine/dbal": "^2.5"
},

composer require doctrine/dbal


Aktualizowanie atrybutów kolumn.

metoda change Umożliwia zmianę istniejącej kolumny dla nowego typu lub zmienić atrybuty kolumn. Na przykład można zwiększyć rozmiar kolumny łańcucha. Aby zobaczyć metodę zmiany działania, zwiększmy rozmiar kolumny name z 25 przed 50:


Schema::table/'users', function /$table/ {
$table->string/'name', 50/->change//;
}/;

Mirosław

Potwierdzenie od:

Ten błąd nadal występuje Laravel 5.1, Nawet jeśli jest zainstalowany
doctrine/dbal

.

Jako tymczasowe obejście, możesz napisać swoją migrację raw SQL w następujący sposób:


public function up//{
DB::statement/"ALTER TABLE table_name RENAME puesto TO aux"/;
}

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się