PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Kolumna zmiany Rails Migration w celu użycia tablic Postgres

PostgreSQL nie wie, jak automatycznie przekonwertować kolumnę varchar do tablicy varchar . Nie wie, co zamierzasz, ponieważ nie ma możliwości sprawdzenia, w jakim formacie Twoim zdaniem są obecne wartości.

Więc musisz to powiedzieć; to właśnie USING klauzula dotyczy.

ActiveRecord nie wydaje się jawnie obsługiwać USING klauzula (nic dziwnego, ponieważ ledwo obsługuje nawet najbardziej podstawowe funkcje bazy danych). Możesz jednak określić własny tekst SQL do migracji.

Zakładając, że ciągi są oddzielone przecinkami i same nie mogą zawierać przecinków, na przykład:

def change
  change_column :table, :dummy_column, "varchar[] USING (string_to_array(dummy_column, ','))"
end

(Sam nie używam Railsów i nie testowałem tego, ale jest to zgodne ze składnią używaną w przykładach gdzie indziej).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Najlepsze narzędzia alertów i powiadomień dla PostgreSQL

  2. Jak uzyskać tekst SQL z wyzwalacza zdarzenia Postgres?

  3. Jak uzyskać aktualną datę w PostgreSQL

  4. ECONNREFUSED dla Postgres na nodeJS z dokerami

  5. Wiele generatorów sekwencji Hibernate dla jednej jednostki z PostgreSQL