Добавить столбец с именем «по умолчанию» - PullRequest
5 голосов
/ 22 февраля 2011

Моя настройка: Rails 2.3.10, Ruby 1.8.7

Я хотел бы добавить столбец таблицы базы данных с именем «default», это разрешено или это зарезервированное слово в Ruby, Rails, sqlite, postgresql ...?

Ответы [ 3 ]

3 голосов
/ 22 февраля 2011

«По умолчанию» - это зарезервированное слово во многих местах, включая все dbms, которые я использовал в течение 25+ лет.

Есть хорошо известные способы использования зарезервированных слов в качестве имен столбцов, и я не собираюсь рассказывать вам, что это такое. Зачем? Потому что я уважаю программистов обслуживания. Когда они увидят ваш код, первый вопрос, который они зададут, это «default @ # $$% ^ @ what?» И они должны будут отследить, что значит иметь боевые шансы внести изменения без внесения ошибки.

Будьте добры к вашим программистам по обслуживанию и будьте более наглядными. Я почти уверен, что каждая широко используемая база данных в настоящее время допускает более 8 символов в имени столбца.

3 голосов
/ 22 февраля 2011

Вот список зарезервированных слов, которые не подходят для использования в качестве столбцов таблицы в Rails. http://oldwiki.rubyonrails.org/rails/pages/ReservedWords

Если вы используете mysql, DEFAULT является зарезервированным словом в соответствии с: http://dev.mysql.com/doc/refman/5.5/en/reserved-words.html

1 голос
/ 22 февраля 2011

DEFAULT - определенно зарезервированное слово в SQL.Он может работать в вашей СУБД, а для конкретных запросов, которые вы используете в своем приложении, может и не работать, но в какой-то момент он, скорее всего, вернется и укусит вас в задницу.Я бы воздержался от его использования.

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