Как добавить новый Столбец в таблице после 2-го или 3-го столбца в пост-ГРЭС использования Таблицы?

Образец Полосы прокрутки Масштабирования на сайте SoftwareFX похож на то, что Вы ищете:

http://demo.softwarefx.com/chartfx/aspnet/ajaxsamples/

57
задан Willi Mentzel 11 March 2016 в 10:29
поделиться

2 ответа

Нет, прямого способа сделать это нет. И для этого есть причина - каждый запрос должен перечислять все поля, которые ему нужны, в любом порядке (и формате и т. Д.), В котором они нужны, таким образом делая порядок столбцов в одной таблице несущественным.

Если вам действительно нужно это сделать. Я могу придумать один обходной путь:

  • выгрузить и сохранить описание рассматриваемой таблицы (используя pg_dump --schema-only --table = ... )
  • добавьте нужный столбец в нужное место в сохраненном определении
  • переименуйте таблицу в сохраненном определении, чтобы не конфликтовать с именем старой таблицы при попытке ее создания
  • создать новую таблицу, используя это определение
  • заполнить новую таблицу данными из старой таблицы, используя 'INSERT INTO <новая_таблица> SELECT field1, field2, , field3 , ... FROM ';
  • переименовать старую таблицу
  • переименовать новую таблицу в исходное имя
  • в конечном итоге удалить старую переименованную таблицу после того, как вы убедитесь, что все в порядке
58
ответ дан 24 November 2019 в 19:39
поделиться

Порядок столбцов совершенно не имеет значения в реляционных базах данных

Да.

Например, если вы используете Python, вы бы сделали:

cursor.execute( "SELECT id, name FROM users" )
for id, name in cursor:
    print id, name

Или вы бы сделали:

cursor.execute( "SELECT * FROM users" )
for row in cursor:
    print row['id'], row['name']

Но ни один здравомыслящий человек никогда не будет использовать такие позиционные результаты, как это:

cursor.execute( "SELECT * FROM users" )
for id, name in cursor:
   print id, name
-1
ответ дан 24 November 2019 в 19:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: