Я пытаюсь разработать модельный объект для хранения строки сервера Sql, и я прекрасно понимаю, как это сделать, за исключением метки времени T-Sql/SqlServer. Таблица определяется как:
CREATE TABLE activity (
activity_id int
, ip_address varchar(39)
, user_id varchar(255)
, message_text
, dt timestamp
)
Когда я разрешаю строку таблицы для моего объекта, для int или строки я бы ожидал сделать что-то вроде:
ActivityID = (int)dataReader["activity_id"];
IPAddress = (string)dataReader["ip_address"];
Но что мне делать с колонкой timestamp? Нет никакого типа данных timestamp, который я могу найти где угодно. Я знаю, что Sql Server хранит временную метку в виде 8-байтового двоичного файла, но что это обычно эквивалентно .NET?
Отредактировано для добавления: Немного дополнительной информации... это строка, возвращаемая из таблицы DB2 на нашем мэйнфрейме, проходящей через представление Sql Server. "Rowversion" не является опцией, и DB2 передает столбец как временную метку. Если timestamp и rowversion идентичны, возможно, я могу рассматривать их как один, но в остальном я застрял с меткой времени.
Отредактировано снова, чтобы добавить: Этот проект будет меня задирать. По крайней мере, это будет короткая поездка. В любом случае, да @JoelC - это представление Sql Server в базе данных DB2 на мэйнфрейме. Наконец, я смог отследить одного из наших администраторов баз данных, который с презрением объяснил, что "конечно" DB2 TIMESTAMP встречается как представление Sql Server как дата-время. Из его голоса я думаю, что только нообы не знают этого. Вот почему он назвал его "datetime" на самом деле, Дух! (Я дал ему другое имя в моем примере, чтобы не приводить комментарий к соглашениям об именах - фактическая диаграмма модели данных говорит, что она TIMESTAMP и называет ее отметкой времени). Итак, в этом случае, видимо, нужно отдать его в DateTime. Я думаю, что я могу начать думать о том, чтобы стать администратором баз данных, так что я тоже могу свести программистов с ума. Извините, если я ввел в заблуждение любого из ответчиков на этот вопрос - это было непреднамеренно, поскольку я действительно ожидал отметки времени, ну, отметки времени. Дурак я. Спасибо, особенно из-за того, что Microsoft назвала байтовым массивом тип данных "timestamp", когда он не имеет ничего общего с датами и временем. У меня нет самой неясной идеи, какой ответ следует отметить как "Ответ". Вздох.