Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 вопрос по TIMESTAMP  [new]
marvel
Member

Откуда:
Сообщений: 1066
USE tempdb
GO
CREATE TABLE t(
    id INT IDENTITY
  , my_value VARCHAR(10) NULL DEFAULT('a')
  , ts TIMESTAMP
)
GO
INSERT INTO t DEFAULT VALUES
GO 10

SELECT *, CONVERT(DATETIME, ts) AS [Пребразование в дату]
    FROM t
    WHERE id = 3
UPDATE t
    SET my_value = 'b'
    WHERE id = 3
SELECT *, CONVERT(DATETIME, ts) AS [Пребразование в дату]
    FROM t
    WHERE id = 3

GO
DROP TABLE t
GO


Объясните почему в преобразованном типе, стоит дата - 1900-01-01 00:18:42.267 а не текущая? я всегда думал что TIMESTAMP обновляется при изменении в дату обновления...
27 мар 12, 13:05    [12319828]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по TIMESTAMP  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
marvel,

TIMESTAMP - это вообще не дата (пока)
Это ROWVERSION

http://msdn.microsoft.com/ru-ru/library/ms182776(v=sql.100).aspx
27 мар 12, 13:07    [12319855]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по TIMESTAMP  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31962
marvel
я всегда думал что TIMESTAMP обновляется при изменении в дату обновления...
Это целое инкрементное число.
27 мар 12, 13:08    [12319866]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по TIMESTAMP  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
BOL
Тип данных timestamp является синонимом типа данных rowversion и подчиняется правилам поведения синонимов типа данных...
Это тип данных, который представляет собой автоматически сформированные уникальные двоичные числа в базе данных. Тип данных rowversion используется в основном в качестве механизма для отметки версий строк таблицы. Размер при хранении составляет 8 байт. Тип данных rowversion представляет собой увеличивающееся значение, которое не сохраняет дату или время.
27 мар 12, 13:09    [12319878]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по TIMESTAMP  [new]
SamMan
Member

Откуда: Moscow
Сообщений: 759
marvel,

BOL
Этот тип данных представляет автоматически создаваемые двоичные числа, уникальные в пределах базы данных.


Вы видите тут хотя б упоминание про ЛЮБУЮ дату?

Алсо,

BOL
Тип данных rowversion является увеличивающимся числом и не основан на дате или времени. Тип данных datetime используется для записи даты или времени.


rowversion = timestamp.
27 мар 12, 13:12    [12319904]     Ответить | Цитировать Сообщить модератору
 Re: вопрос по TIMESTAMP  [new]
trew
Member

Откуда: Москва
Сообщений: 2646
TIMESTAMP
http://msdn.microsoft.com/ru-ru/library/ms188751.aspx
27 мар 12, 13:17    [12319959]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить