|
|
|
Изменение типа столбца в таблице с INTEGER на BIGINT
|
|||
|---|---|---|---|
|
#18+
Есть таблица FRAGMENTS. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. В таблице 100 млн записей. Одно из полей OFFSET имеет тип INTEGER. Теперь его стало не хватать, и нужно переделать в BIGINT. Как правильно выполнить процедуру? Пытался сделать через db2cc, но он по всей видимости пересоздает таблицу и делает еще какие то магические вещи. Процедура выполняется нереально долго, ни разу не дождался ее выполнения. Давал из командной строки команду: Код: sql 1. Выполняется успешно и практически моментально. Вопрос такой. Какая последовательность изменения типа поля правильная? Нужно ли предпринимать какие то дополнительные действия после выполнения команды из консоли? Подскажите пожалуйста! Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2018, 12:58 |
|
||
|
Изменение типа столбца в таблице с INTEGER на BIGINT
|
|||
|---|---|---|---|
|
#18+
kogor, Почитайте вот здесь ALTER TABLE statement от слов SET DATA TYPE. Изменение типа колонки (кроме как увеличение размера CHAR/VARCHAR полей) требует изменения физического представления существующих строк таблицы в страницах, что в свою очередь требует классической реорганизации таблицы (offline reorg). До того, как выполнен реорг таблица будет доступна только на чтение. Для больших таблиц может быть эффективней пересоздать таблицу и перезалить LOAD'ом из курсора, а потом переименовать. Есть нюансы. Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2018, 16:01 |
|
||
|
Изменение типа столбца в таблице с INTEGER на BIGINT
|
|||
|---|---|---|---|
|
#18+
kogor, Таблица в read-only режим встанет, пока ее не реорганизовать в оффлайне. Если надо в онлайне, пользуйтесь процедурой admin_move_table, которая фактически перезагрузит таблицу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2018, 16:06 |
|
||
|
|

start [/forum/topic.php?fid=43&fpage=6&tid=1600306]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 138ms |

| 0 / 0 |
