powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Получение текущего времени с точностью до милисекунд
25 сообщений из 26, страница 1 из 2
Получение текущего времени с точностью до милисекунд
    #34202709
parasport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, такой вопрос как получить текущее время с точностью до милисекунд?

Заранее спасибо
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34202781
Фотография AIZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Текущее время чего? Сервера БД или рабочей станции?
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34202848
Фотография urvas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если с сервера Oracle -
select systimestamp from dual
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34202850
Фотография urvas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SYSTIMESTAMP
-------------
15.12.06 05:16:14,531350000 GMT-05:00

1 rows selected
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34202855
parasport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
время - системное
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34202874
Фотография AIZ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может это кому пригодится, правда в сотых долях с начала суток.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
CREATE OR REPLACE FUNCTION GET_TIME_AM
  RETURN NUMBER IS
/*
 * Created by:
 * A. Gerasimov (ASBT) 17.10.1998
 * Purpose:
 * Возвращает время с полуночи в сотых долях секунды
 */
RetTime NUMBER; -- Возвращаемое значение
tmpTime Date;   -- Текущея дата/время
GTime NUMBER;   -- Время в сотых долях секунды с момента загрузки сервера
SecByDay NUMBER; -- Время с начала дня в секундах
BEGIN
   tmpTime:=SYSDATE;
   GTime:=dbms_utility.get_time;
   SecByDay:=To_Number(To_Char(tmpTime,'SSSSS'));
   RetTime:= SecByDay* 100  + (GTime - Trunc(GTime,- 2 ));
   Return RetTime;
END;
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34203013
PavelBuilder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно спросить, зачем такая точность? Пока будет выполняться ваш код пройдет не одна милисекунда, так зачем такая точность? Цель?
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34203032
Фотография Dmitry.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если реч все-же идет о PowerBuilder ,

то ф-я now() возвращает возвращает время с милисекундами
а вот чтобы их увидеть string( now(), 'hh:mm:ss.fff' )
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34203234
parasport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Первичный ключ для одной таблицы имеет формат год+номер дня от начала года+колличество секунд от начала дня, зачем это было придумано я не в курсе. Сейчас эта таблица заполняется посредствам вычитки из файла данных и заполнения датасторе. И вопщем успевают появится совпадающие ключи
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34203238
parasport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, Дмитрий
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34203275
parasport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, не помогло:-)
приплюсовывание милисекунд ко всей описанной ранее ерунде результата не дало, реже но повторяются
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34203560
PavelBuilder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Переделайте таблицы, создавайте нормальные ключи и связи. Больше ничего не поможет. Нельзя использовать дату в качестве ключа - это аксиома теории структурного анализа.
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34203852
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>> To PavelBuilder

Можно, например в качестве cocтавного Primary key... Исходя из текущей логики...

Например... дата + уникальный номер платежа за день... Ну или хотя бы уникальный индекс забодяжить ....
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34204292
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для Oracle существует формирователь уникальной последовательности - сиквенс
Не использовать его - просто безграмотность
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34204351
Фотография Dmitry.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 parasport скажите уже какая у вас база, а то упоминание оракла без вопроса о нем...
уже достало
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34204452
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Достало, не достало....
А базу узнать не мешало бы
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34204855
parasport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
База Anywhere 9, а вообще вопрос решился тупым добавлением итератора цикла, в котором всё пишется, к той всей бодяге + милисекундам
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34208369
PavelBuilder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вобщем строго говоря нет у вас PK как такового :) тогда нахрена он вообще нужен?
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34208600
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
parasportБаза Anywhere 9, а вообще вопрос решился тупым добавлением итератора цикла, в котором всё пишется, к той всей бодяге + милисекундамА если взять и почитать документацию, то выяснится интересная вещь - ASA9 сама по себе умеет записывать и миллисекунды и даже фиктивные миллиардные доли секунды. Достаточно объявить поле типа timestamp default timestamp и не писать в него из клиента.
Но конечно изобретать велосипед намного веселее чем читать документацию.
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34209481
PavelBuilder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все равно нельзя использовать в качестве первичного ключа дату, хотя этого в документации не пишут, но знать об этом надо.

P.S. поле типа timestamp мы всегда добавляем во все таблицы - весьма удобно определить время последней правки записи, заодно можно и user`а прописывать (в триггере реализовать).
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34209941
zuzu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
первичный ключ обычно заполняют по сиквенсу,
а насчет доп инфы, у нас есть 3 поля: date_insert, date_mod, code_user,
думаю по названию понятно для чего они юзаются,
а PK как дата - это ошибка, что будет если 2 юзера одновременно выпонят этот инсерт .....
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34209958
Фотография urvas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Один из них не выполнит... :-)))
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34210711
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>> To urvas

А ты юзверам в реальном режиме что будешь отвечать когда бдут появляются ошибки duplckate key is failed?
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34211140
Фотография urvas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, если уж доводить до конца эту нелепость, то можно перехватить в dberror эту ошибку и заменить значение первичного ключа, а пользователю НИЧЕГО не сообщать. :-)))
...
Рейтинг: 0 / 0
Получение текущего времени с точностью до милисекунд
    #34211201
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, исправлять ошибки непродуманной базы - это разрастать очередной гемор
Типа:
Ошибка была не очень страшна, если бы не попытки ее исправить
...
Рейтинг: 0 / 0
25 сообщений из 26, страница 1 из 2
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Получение текущего времени с точностью до милисекунд
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]