Преобразование форматов данных в БД (timestamp)
Версия для печати


Форум:  НТО Терси-КБ
Тема:  http://tersy.ru/index.php?module=pnForum&func=viewtopic&topic=92

Преобразование форматов данных в БД (timestamp)


1.  Neurox,  09.08.2011 10:35
Добрый день уважаемые разработчики!

Недавно возникла необходимость записи в архивную бд данных от постороннего источника (не через контроллер).
Вскрытие показало что в архивной базе временная метка хранится в формате TIMESTAMP причем годы с 1900 и время повышенной точности. тип данных в БД DOUBLE PRECISION.

Каким образом можно осужествить преобразование в стандартные чч-мм-гг : время и обратно?

если с временем все относительно ясно--берем дробную часть и делим на тикер равный 0,1 мс (0,0000000011574) получаем количество десятых мс с начала суток и далее.

То с преобразованием времени совсем непонятно, может в БД есть готовый код для таких операций?


2.  Roman,  09.08.2011 12:34
Здравствуйте, Neurox.

Neuroxв архивной базе временная метка хранится в формате TIMESTAMP причем годы с 1900 и время повышенной точности. тип данных в БД DOUBLE PRECISION.
Каким образом можно осужествить преобразование в стандартные чч-мм-гг : время и обратно?

Каскад-САУ использует формат OLE DateTime для хранения даты и времени во всей системе, включая архивную базу данных. Кратко формат времени описан в документе «Импорт данных из архивов Каскад-САУ». Более подробную информацию можно найти в сети Internet.

Однако, напоминаем Вам, что вмешиваясь в работу архива Каскад-САУ Вы нарушаете сразу два пункта лицензионного соглашения:

Цитата6. Ограничения на использование

Без получения соответствующего разрешения НТО «Терси-КБ» Вам запрещается:

6.1. декомпилировать, дизассемблировать, дешифровывать, извлекать фрагменты или любым другим путем пытаться или содействовать другим в проведении инженерного анализа составляющих любого компонента, включая внутренние протоколы обмена данными и базы данных;

6.2. модифицировать составляющие любого компонента с помощью программных средств, не входящих в состав данного продукта;


Кроме того, попытка самостоятельного добавления данных в архивную базу данных может привести к ошибкам в ее работе вплоть до того, что сделает невозможным запись в нее новых данных штатными средствами Каскад-САУ.

3.  lutes,  09.08.2011 17:12
Все дело в том, что Neuroxу была поставлена задача наложить текущий график на планируемый, это было бы осуществимо в случае возможности записать в базу жестко определенную точку так сказать "в будущее" время. Если есть другая возможность реализовать данную функцию,прошу помочь...

4.  Roman,  09.08.2011 17:58
Да, это нетривиальная задача. Обратитесь с запросом в службу технической поддержки по электронной почте по адресу cascade@tersy.ru. В запросе укажите как можно подробнее, какие данные у Вас есть и что Вы хотите получить в итоге. Постараемся помочь.