Когда я пытаюсь изменить столбец с типом TEXT на DECIMAL или наоборот, это не произойдет. Но если я сначала изменю его на VARCHAR , то он может измениться в DECIMAL. Мой вопрос: почему мы не можем изменить текст из десятичного или десятичного в текст непосредственно?
Create Table temp
(
id int,
some_field text NULL
)
ALTER TABLE temp ALTER COLUMN some_field DECIMAL(16,2) NULL;
--Cannot alter column 'some_field' to be data type decimal(16,2).
Изменение его в varchar:
ALTER TABLE temp ALTER COLUMN some_field VARCHAR NULL;
--Command(s) completed successfully.
ALTER TABLE temp ALTER COLUMN some_field DECIMAL(16,2) NULL;
--Command(s) completed successfully.