2016-04-23 4 views
0

У меня есть имя таблицы «Валюта», и у него есть имя столбца «cur» типа DECIMAL (12,6). Я хочу увеличить этот размер до DECIMAL (12,8). Пожалуйста, предложите мне запрос для этого в Teradata. Я не хочу потерять предыдущие данные.запрос teradata для обновления размера столбца

+0

alter table добавить DECIMAL (12,8) –

+0

@AritraBhattacharya это не работает. Есть ли другой путь? спасибо –

ответ

0

Невозможно изменить точность DECIMAL (если бы это было NUMBER).

Лучший способ, вероятно:

  • создать новую таблицу с правильным типом данных
  • Сливаем старое в новое
  • Отбросьте старые и переименуйте старой

Разумеется, вы также должны увеличить масштаб до DECIMAL (14,8), в противном случае вы можете получить числовое переполнение ошибка

+0

Я создал новую таблицу с обновленным размером столбца. Теперь, как слить его? пожалуйста, сообщите простой запрос без каких-либо ограничений, потому что я хочу, чтобы все данные были объединены в новую таблицу без потери данных. Спасибо –

+0

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

+0

@SanjeetSingh: вы можете просто вставить/выбрать, но с помощью 'MERGE' (http://www.info. teradata.com/HTMLPubs/DB_TTU_15_10/SQL_Reference/B035_1146_151K/ch03.023.159.html) более эффективен, см .: http://developer.teradata.com/blog/dnoeth/2013/08/why-dont-you-use- alter-table-to-alter-a-table – dnoeth

Смежные вопросы