#sql #sql-server #tsql
#sql #sql-сервер #tsql
Вопрос:
Структура таблицы
create table t_test(
id int ,
timestamp timestamp
)
Заполнить данные
insert into t_test(id)values(1)
Результат запроса
select * from t_test
------------------------
id | timestamp
------------------------
1 | 0x0000000000024EBC
------------------------
Добавить столбец
alter table t_test add column new_column char(1) default '1' with values
После того, как я добавил столбец, значение метки времени столбца изменилось. Как я могу сделать и сохранить его ценность, как и раньше?
Результат запроса (после добавления столбца)
select * from t_test
----------------------------
id | timestamp | new_column
----------------------------
1 | 0x0000000000024EBC | 1
----------------------------
Спасибо
Комментарии:
1. Я бы не рекомендовал использовать «метку времени» в качестве имени столбца (или любого другого)
2. @PaulMaxwell Спасибо вам! Пол Максвелл. Это старый проект и сложная бизнес-система, ни в коем случае.
3. Вы знаете, что
timstamp
на самом деле? Это номер версии строки, а неdatetime
4. Короткий ответ — вы не можете. Это значение поддерживается ядром базы данных, и вы не можете принудительно присвоить ему какое-либо конкретное значение и не можете отключить способ его обновления ядром.