2014-11-12 3 views
0

Если у меня есть стол User.Как изменить положение столбца в таблице

На первой, она имеет 2 колонки phone, address

Позже мне нужно в качестве нового столбца name,

Как я могу добавить новый столбец и поставить новый столбец в первой позиции.

Я знаю, как добавить новый столбец

add_column :users, :name, :string 

Но не зная, как изменить свой заказ.

Потому что оно будет добавляться к последней позиции по умолчанию.

Я прочитал книгу «голова первого SQL»

Он сказал мне, что это лучшая практика, чтобы поставить первичный ключ в первом положении

+1

https://wiki.postgresql.org/wiki/Alter_column_position Почему вы хотите изменить положение столбцов? –

+0

Возможный дубликат [Можно ли изменить естественный порядок столбцов в Postgres?] (Http://stackoverflow.com/questions/126430/is-it-possible-to-change-the-natural-order-of- columns-in-postgres) –

+2

Мне действительно интересно Почему вы хотите изменить положение столбцов? просто любопытно узнать почему? –

ответ

1

Используйте :first вариант

add_column :users, :name, :string, :first => true 
+1

Как это должно работать, учитывая, что это невозможно на уровне SQL? –

0

You может использовать :after в рельсах, чтобы расположить столбцы следующим образом:

add_column :users, :name, :string, :after => :id #primary_key 
Смежные вопросы