Страница 1 из 1

SQL->время

Добавлено: 11 сен 2018, 21:06
Artem.spb
Странная странность, особенная особенность. По крайней мере я был крайне удивлён.

Итак, имеем. Нами любимая(ое/ый) :labview: + Data base toolkit + SQL сервер Али Бабы.
Программа тянет данные из базы, рисует их на график, всё чудесно.
И вот те на. "error 1 scan from string". А это перевод строки-времени собственно во само время. копаю и раскапываю.
База (через MS management studio):
sql.PNG
sql.PNG (4.89 КБ) 5150 просмотров
А тулкит возвращает:
LV.PNG
Оказывается доли секунд округляются до целого. И ровно в полночь возникает странность. Дату прибавили, а время написать забыли почему-то.
И вот ради одной точки, которая может появиться с малой вероятностью приходится проверять, что время в строке есть.

Re: SQL->время

Добавлено: 11 сен 2018, 22:01
Kosist
Тип данных в базе данных - строка, или именно время?
Завтра посмотрю на своем проекте, но уверен что все должно работать с миллисекундами...
Попробуйте достать таймстемп при помощи подобного запроса, как здесь - https://lavag.org/topic/19677-db-connec ... ent=119056, но только с указанием форматирования с миллисекундами... Будет ли так работать?

Re: SQL->время

Добавлено: 12 сен 2018, 11:31
Artem.spb
В базе время.
Я запрашиваю все столбцы разом вариантом, а потом разбираю их.
Как-нибудь при случае поэкспериментирую.

Re: SQL->время

Добавлено: 12 сен 2018, 13:57
Borjomy_1
У лабвьюшного таймстампа тоже есть баг. Время в районе UTF 00:00:00 01.01.1904 . Дата становится нечислом.

Re: SQL->время

Добавлено: 12 сен 2018, 22:34
Kosist
Borjomy_1 писал(а):У лабвьюшного таймстампа тоже есть баг. Время в районе UTF 00:00:00 01.01.1904 . Дата становится нечислом.
Для датабазы это не будет проблемой - обычно ведь туда пишется реальное время, а в 1904 :labview: еще небыло :wink:

Re: SQL->время

Добавлено: 13 сен 2018, 13:08
Artem.spb
Kosist писал(а):
Borjomy_1 писал(а):У лабвьюшного таймстампа тоже есть баг. Время в районе UTF 00:00:00 01.01.1904 . Дата становится нечислом.
Для датабазы это не будет проблемой - обычно ведь туда пишется реальное время, а в 1904 :labview: еще небыло :wink:
базы существуют не только для настоящего. Какая-нибудь энциклопедия по истории будет пестрить отрицательными датами

Re: SQL->время

Добавлено: 13 сен 2018, 13:34
Kosist
Ну, это не Ваш случай. И потом, в энциклопедии по истории вряд ли будет дата и время (!) именно для 1904 года.
"Отрицательные даты" - это что-то новенькое :crazy:

Re: SQL->время

Добавлено: 13 сен 2018, 14:28
Artem.spb
Kosist писал(а): "Отрицательные даты" - это что-то новенькое :crazy:
это как раз стренькое. и чем старее, тем отрицательнее.
ts.PNG
ts.PNG (9.59 КБ) 5043 просмотра

Re: SQL->время

Добавлено: 13 сен 2018, 15:00
Artem.spb
Kosist писал(а):Тип данных в базе данных - строка, или именно время?
Завтра посмотрю на своем проекте, но уверен что все должно работать с миллисекундами...
Попробуйте достать таймстемп при помощи подобного запроса, как здесь - https://lavag.org/topic/19677-db-connec ... ent=119056, но только с указанием форматирования с миллисекундами... Будет ли так работать?
по ссылке обсуждается мускуль (mysql), решение для моей базы не подходит.
Накопал ещё решение, оно ближе к делу, но не проверял. Пока забил на эксперименты

Re: SQL->время

Добавлено: 13 сен 2018, 17:14
Kosist
А какой тулкит Вы используете для mysql?

Re: SQL->время

Добавлено: 14 сен 2018, 10:32
Artem.spb
Kosist писал(а):А какой тулкит Вы используете для mysql?
Kosist, вы читаете мои сообщения, или по диагонали просматриваете?
У меня не мускуль, скорее всего MS SQL, а что реально у алибабы стоит, я не выяснял.

Re: SQL->время

Добавлено: 15 сен 2018, 09:42
Kosist
Artem.spb писал(а):Kosist, вы читаете мои сообщения, или по диагонали просматриваете?
Прошу прощения, действительно - читал сообщения по диагонали... :crazy: