|
ODBC + PostgreSQL. Ошибка получения даты | ☑ | ||
---|---|---|---|---|
0
PitNN
28.10.22
✎
09:50
|
Добрый день, Коллеги. Просьба подсказать, кто сталкивался. Есть внешняя БД на postgresql. В таблице одно из полей имеет тип timestamp (пробовал тип date результат тот же). При чтении данных ADODB.Recordset из этой таблицы, когда доходит до чтения из поля с типом "дата" вываливается ошибка: "Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): Произошли ошибки во время выполнения многошаговой операции OLE DB. По возможности, проверьте значения всех состояний OLE DB. Работа не выполнена."
В чем может быть причина? |
|||
1
Garykom
гуру
28.10.22
✎
10:06
|
Причина в использовании устаревших уже не поддерживаемых реально технологий
|
|||
2
PitNN
28.10.22
✎
10:51
|
(1) Какую именно технологию вы считаете устаревшей?
|
|||
3
Garykom
гуру
28.10.22
✎
11:13
|
(2) ADODB и ODBC
|
|||
4
Garykom
гуру
28.10.22
✎
11:19
|
v8sqlite - нативная ВК для работы из 1С c базами sqlite см там 21 пост
это то что предпочитаю в настоящее время использовать вместо устаревших технологий |
|||
5
NorthWind
28.10.22
✎
11:47
|
(0) скорее всего кривая связка драйвера ODBC и OLE провайдера. Поищите другие варианты, например, подключитесь к ODBC драйверу через внешний источник данных 1С или попытайтесь поменять версию драйвера, если это возможно. Вообще OLEDB провайдеры достаточно капризная штука, особенно если речь идет не о Microsoftовских базах данных.
|
|||
6
Garykom
гуру
28.10.22
✎
11:51
|
(5) Не поможет.
Потом какое то другое поле встретится, например длинное BINARY или еще что и снова привет. |
|||
7
PitNN
28.10.22
✎
11:52
|
(5) Замечена такая штука. Если в ячейке записана дата "0100-01-01 00:00:00.000", то при чтении из Recordset она определяется как 01.01.0001 (т.е. потерялись куда-то 100 лет)
Если в ячейке записана дата меньше "0100-01-01 00:00:00.000" (в том числе и "0001-01-01"), то это приводит к указанной выше ошибке. Начиная с даты "0101-01-01 00:00:00.000" всё определяется корректно |
|||
8
PitNN
28.10.22
✎
11:53
|
(4) Как это поможет подключиться, например к clickhouse?
|
|||
9
Garykom
гуру
28.10.22
✎
11:54
|
https://www.google.ru/search?q=odbc+timestamp+postrgesql
уже пробовал? |
|||
10
Garykom
гуру
28.10.22
✎
11:54
|
(8) а какая нахрен разница то?
|
|||
11
Garykom
гуру
28.10.22
✎
11:55
|
||||
12
Garykom
гуру
28.10.22
✎
12:40
|
||||
13
Garykom
гуру
28.10.22
✎
13:15
|
(12)+ ну как работает psql.exe описанный в v8sqlite - нативная ВК для работы из 1С c базами sqlite ?
|
|||
14
PitNN
28.10.22
✎
13:54
|
(13) Работа через запуск командного интерпретатора с последующим чтением файла ответа это, конечно, вариант. Спасибо за совет
|
|||
15
ДедМорроз
28.10.22
✎
17:43
|
Можно еще попробовать дату приводить к строке или числу в самом запросе.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |