LONGTEXT действителен при миграции для PGSQL и MySQL - PullRequest
1 голос
/ 09 февраля 2011

Я разрабатываю приложение Ruby on Rails, которое хранит много текста в столбце LONGTEXT. Я заметил, что при развертывании в Heroku (который использует PostgreSQL) я получаю исключения вставки из-за слишком большого размера столбцов. Есть ли что-то особенное, что нужно сделать, чтобы получить тегированный тип столбца большого текста в PostgreSQL?

Они были определены как "строковый" тип данных в миграции Rails.

Ответы [ 3 ]

2 голосов
/ 09 февраля 2011

Если вам нужен и тип данных длинного текста в PostgreSQL, просто создайте его. домен будет делать:

CREATE DOMAIN longtext AS text;

CREATE TABLE foo(bar longtext);
1 голос
/ 09 февраля 2011

В PostgreSQL обязательный тип text. См. Раздел Типы символов в документации.

0 голосов
/ 10 февраля 2011

Новая миграция, которая обновляет тип данных модели до 'text', должна работать. Не забудьте перезапустить базу данных. если у вас все еще есть проблемы, взгляните на свою модель с помощью 'heroku console' и просто введите название модели.

Если перезапуск БД не решит проблему, единственный способ, который я выяснил, - сбросить базу данных с помощью 'heroku pg: reset'. Нет ничего смешного, если у вас уже есть важные данные в вашей базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...