(Это ответ, опубликованный отдельным вопросом Ответы на загадочные вопросы о типе времени 'timestamp' Sybase ASE пользователем без представителя, чтобы добавить его сюда. Я скопировал его в виде вики сообществапоскольку я не хочу претендовать на кредит, но это должно быть здесь)
Ответ на вопрос №1: «Какого черта метка времени?»
• Метка времени Sybase ASEбаза данных хранится централизованно во внутренней таблице в памяти «dbtable» этой базы данных - эта таблица создается, когда база данных переводится в оперативный режим.Вы можете запросить текущую временную метку БД, выбрав @@ dbts - имейте в виду, что это значение временной метки varbinary (8) «База данных» зависит от платформы, т. Е. Подвергается действительному значению в больших или малых значениях.
• Каждая пользовательская таблица может иметьодин столбец отметки времени для хранения значений отметки времени 'Database' для INSERT / UPDATE данной строки.Все значения столбца метки времени «Таблица» автоматически поддерживаются ASE (так же, как и столбец идентификаторов) при успешном завершении команды TSQL DML.Однако, в отличие от временного интервала «База данных», временные метки «Таблица» не зависят от платформы, поскольку они всегда сохраняются в байтовом порядке с прямым порядком байтов независимо от порядкового номера платформы O / S (подробности см. Ниже).
Ответ на вопрос № 2: «Имеет ли он какое-либо отношение ко времени или дате?»
Нет, значения в метках времени «База данных» и на отметках времени «Локальные» на странице не имеютотражать фактическую дату / время.
Ответ на вопрос № 3: «Могу ли я преобразовать его в дату-время?»
Нет, вы не можете конвертировать метки времени «База данных» или «Локальные» его страниц в дату./ значение времени.
Ответ на вопрос № 4: «Если это не время или дата, для чего вы их используете?»
• Метка времени «База данных» увеличивается на единицу всякий раз, когдастраница в базе данных изменяется или создается, в то время как временная метка соответствующей страницы (в ее заголовке) синхронизируется с временной меткой «База данных» того времени.
• По сравнению с 'Временная метка базы данных в настоящее время, локальная временная метка страницы базы данных отражает относительный возраст последнего обновления или первого создания этой страницы;следовательно, ASE может определить хронологический порядок обновлений / созданий для всех страниц в базе данных.
• Приложение может использовать столбец отметок времени «Таблица» аналогично столбцу идентификаторов, чтобы найти самые последние или наименее недавно добавленные / обновленные строки независимо от значений ключей строк.
Дополнительная информация, предупреждения и предостережения: -
(1) Временные метки «База данных» и «Локальные» хранятся в 3 частях и зависят от порядкового номера платформы ОС.например, 0xHHHH 0000 LLLLLLLL
- 2-байтовый старший порядок - 0xHHHH
- 2-байтовый заполнитель - 0x0000
- 4-байтовый старший порядок - 0xLLLLLLLL
(2) Временная метка пользователя «Таблица» также хранится в 3 частях, но она всегда находится в ориентации старшего разряда.например, 0x0000 HHHH LLLLLLLL
- 2-байтовый заполнитель - 0x0000
- 2-байтовый старший порядок - 0xHHHH
- 4-байтовый старший порядок - 0xLLLLLLLL
(3) Временная метка базы данных хранится в dbtable системной таблицы в памяти данной базы данных (которая создается, когда база данных переводится в оперативный режим).
- Note1-«Таблица» Значения столбца метки времени хранятся так же, как и другие значения столбца на страницах данных и / или индексов таблицы базы данных, в которой определен столбец метки времени.
- Примечание 2. Имейте в виду, что запрос метки времени текущей базы данных «База данных» с помощью SELECT @@ dbts возвращает ее шестнадцатеричное представление, которое подчиняется порядку байтов платформы ОС.
- Примечание 3 - Напротив, запрос метки времени 'Database' по DBCC dbtable (не рекомендуется) возвращает его шестнадцатеричное представление с прямым порядком байтов, таким образом, оно не зависит от платформы.
- WARNING - Когда временная метка «База данных» данной базы данных приближается к своему максимальному пределу, т.е. (0xFFFF, 0xFFFFFFFF), и может потребоваться десятилетие или более, чтобы достичь этой точки в зависимости от частоты операций вставки / обновления в базе данных, ASE будетвыдает предупреждение и дальнейшая вставка / обновление невозможны - единственная возможность - экспортировать данные из всех объектов, используя BCP (плюс хранимые процедуры через sp_showtext), удалить базу данных, создать ее заново (с новой почти нулевой базой данных)отметка времени) и импортируйте данные (и хранимые процедуры).
К вашему сведению - приведенные выше ответы, советы и подсказки являются подлинными и точными, так как я работал в Sybase и теперь работаю в SAP, владеющей продуктом ASE.