PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Какво определя дали rails включва id::serial в дефиниция на таблица?

Когато стартирате rails db:migrate:reset за разлика от rails db:reset , схемата на базата данни не се зарежда от schema.rb но вместо това се реконструира от всички ваши миграции. В миграциите и файловете със схеми не е необходимо да указвате id едно е предоставено по подразбиране. Въпреки това, започвайки с Rails 5.1, размерът по подразбиране на полето за id беше увеличен от INT към BIGINT за MySQL и от SERIAL към BIGSERIAL за PostgreSQL. Така че вероятно има някакво взаимодействие между вашите миграции, schema.rb и действителната схема в базата данни, която кара полето за id да се третира като стандартно (и да се пропуска) в някои случаи и да бъде изрично указано в други, само поради промяната в размера по подразбиране. Трудно е да се познае източникът на проблема, без да се видят всички съответни файлове.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Заявките в pg_stat_activity са съкратени?

  2. Транспониране на редове и колони (известен още като завъртане) само с минимален COUNT()?

  3. Грешка в гнездото на Postgresql при стартиране на syncdb на Django (mac OS 10.7.5)

  4. Съхранение на изображения в PostgreSQL

  5. При INSERT към таблица INSERT данни в свързани таблици