powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
25 сообщений из 70, страница 1 из 3
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39693668
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.

После самопроизвольного :) обновления Windows 10 до версии 1803 перестал работать макрос VBA c firebird 2.5.
При этом доступ на чтение остался, вот вставка\обновление записей выполнить не получается.

Вываливается с ошибкой

ODBC Firebird Driver "Count field incorrect"


Такое уже случалось 3 месяца назад, в тот раз откат системы помог. Но не постоянно же откатываться..
Может есть возможность заставить работать клиента firebird на версии Win10.1803 ?
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39693744
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PATRI0T,

Приведи конкретику (какой запрос не идёт). Эксперт что говорит?
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694362
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Строка подключения
DRIVER=Firebird/InterBase(r) driver;UID=SYSDBA;PWD=passpass;DBNAME=192.168.1.59:F:\Work\FireBird DB\SOLO.fdb;

IP Адрес этого компьютера.

подключение к базе
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
Sub CreateConnection()
    Dim AdoErr
    Dim ErrMsg As String
    
    ConnStr = ConStr_Driver & _
                "UID=" & [Настройки_ПользовательБД] & ";" & _
                "PWD=" & [Настройки_ПарольБД] & ";" & _
                "DBNAME=" & [Настройки_АдресБД] & ";"
                
    If CN.State = adStateOpen Then CN.Close
    CN.CursorLocation = adUseServer
               
On Error GoTo ErrCN
    CN.Open ConnStr
        
    With RS
        RS.CursorType = adOpenDynamic
        RS.LockType = adLockOptimistic
    End With
    
    With CMD
        .ActiveConnection = CN
        .CommandType = adCmdText
    End With
        Exit Sub

End Sub



Проблемное место указано стрелочкой..

Код с ошибкой
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
    

..
    Call CreateConnection
    If CN.State = adStateClosed Then Exit Sub
        CMD.CommandText = "Select * From ORDERS where ID=" & OrderID
        With RS
...
 ' Вставляем ключевые даты в таблицу заказов
            CMD.CommandText = "Select * From ORDERS where ID=" & OrderID
                .Open Source:=CMD
                    !PLAN_DATE_FIRSTSTAGE = ДатаНачалаПроизводства
                    !PLAN_DATE_PACK = ДатаУпаковки
                .Update <============================= Останавливается здесь с вышеуказанной ошибкой 
                .Close
        End With
....



Трассировка в IBexpert2018-08-28T14:57:41.8490 (4624:0000000000F1CCD8) FREE_STATEMENT
F:\WORK\FIREBIRD DB\SOLO.FDB (ATT_167989, SYSDBA:NONE, NONE, TCPv4:192.168.1.59)
C:\Program Files\Microsoft Office\Office16\EXCEL.EXE:24476

Statement 6056:
-------------------------------------------------------------------------------
UPDATE ORDERS SET PLAN_DATE_FIRSTSTAGE=?,PLAN_DATE_PACK=? WHERE (ID=? AND MANAGER=? AND CLIENT=? AND ORDERNUM=? AND ITM_ORDERNUM=? AND FASAD_MAT=? AND FASAD_MODEL=? AND FASAD_PG_WIDTH=? AND TEXTURE=? AND FIL_MAT=? AND FIL_MODEL=? AND COLOR=? AND FIL_COLOR=? AND COLOR_TYPE=? AND COLOR_LAK=? AND CO...
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
PLAN (ORDERS INDEX (PK_ORDERS))


И вот вопрос.. а это так надо, что оно заканчивается на "AND CO..."
Это обрубил IBExpert, или это и есть причина моих бед?
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694368
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PATRI0T,

это у тебя трассировка настроена на обрезание запроса. Настрой Maximum length of string SQL logged
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694449
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, я уже разобрался... ничего интересного..
А можно как нибудь отобразить значения вместо вопросов?
2018-08-28T15:06:10.9770 (4624:0000000000F1B3A8) FREE_STATEMENT
F:\WORK\FIREBIRD DB\SOLO.FDB (ATT_168027, SYSDBA:NONE, NONE, TCPv4:192.168.1.59)
C:\Program Files\Microsoft Office\Office16\EXCEL.EXE:24476

Statement 6256:
-------------------------------------------------------------------------------
UPDATE ORDERS SET PLAN_DATE_FIRSTSTAGE=?,PLAN_DATE_PACK=? WHERE (ID=? AND MANAGER=? AND CLIENT=? AND ORDERNUM=? AND ITM_ORDERNUM=? AND FASAD_MAT=? AND FASAD_MODEL=? AND FASAD_PG_WIDTH=? AND TEXTURE=? AND FIL_MAT=? AND FIL_MODEL=? AND COLOR=? AND FIL_COLOR=? AND COLOR_TYPE=? AND COLOR_LAK=? AND COLOR_PATINA=? AND GLASS=? AND PRIMECH IS NULL AND ORDER_COST_PRICECOLUMN IS NULL AND ORDER_COST=? AND ORDER_PAY IS NULL AND ORDER_TOTAL_COST=? AND ORDER_DISCOUNT=? AND ORDER_COST_PACK=? AND ORDER_COST_GLASS=? AND FACT_DATE_RECEIVE IS NULL AND FACT_DATE_FIRSTSAVE=? AND FACT_DATE_LASTSAVE=? AND FACT_DATE_CALCCOST=? AND FACT_DATE_EXPORT_ITM=? AND PLAN_DATE_FIRSTSTAGE=? AND PLAN_DATE_PACK=? AND FACT_DATE_PACK IS NULL AND FACT_DATE_ORDER_OUT IS NULL AND ORDER_STATUS=? AND FACT_DATE_ORDER_CANCEL=? AND REASON_ORDER_CANCEL IS NULL AND USER_ORDER_CANCELED IS NULL AND ORDER_TYPE=? AND TEXTURE_COMMENT=? AND COLOR_LAK_COMMENT=? AND COLOR_PATINA_COMMENT=? )
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
PLAN (ORDERS INDEX (PK_ORDERS))
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694451
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
но вопрос так и не решен..
что могло повлиять на такое странное поведение?
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694466
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PATRI0T,

в одбц у микрософта что-то поменялось?
Гугл выдает тучу вопросов типа
Windows 10 - after update 1803 odbc SQL server connect problem...

замечу, что тут даже слова Firebird нет.

Некоторые люди советуют пересоздать (или обновить) имеющиеся DSN (посредством настройки odbc).
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694485
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv,

У ТС ведь ошибка ODBC Firebird Driver. Может этот драйвер переставить? У меня дома на 64-разрядной Винде именно этого обновления всё нормально. ODBC Firebird Driver не глючит, ошибки не выкидывает. Правда, и в Экселе я не работаю с FB.
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694494
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сейчас, все домой уйдут, базу освободят, попробую переустановить ODBC и пересоздать DNS

В людей в сети обычно были проблемы, когда база находилась на сетевом ресурсе подключенным через SMBv1
И исправление касается именно этого протокола
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694501
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PATRI0T,

Зачем всем уходить? Это же проблема клиента. На одной станции сделайте переустановку и всё. Не терминальный сервер же.
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694519
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
увы, ничего не помогло...
Переустановил Firebird (Обновил на версию 2.5.7)
ODBC x64 Драйвер..
Удалил-заново создал DSN
Все одно
Не пашет..

Про DSN что-то не понял.. в моей схеме подключения оно как будто работает не через него, т.к. переименовывал и в этот момент пробовал подключиться - база работала на чтение. А Update - не делает..
Можно еще что-нибудь попробовать?
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694530
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PATRI0TВ людей в сети обычно были проблемы, когда база находилась на сетевом ресурсе подключенным
через SMBv1

В этом случае ошибку выдает подключение, а не выполнения запроса.

PATRI0TМожно еще что-нибудь попробовать?
Включай трассировку ODBC и смотри какой конкретно вызов и почему выдаёт эту ошибку.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694535
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Немного проясняется..

стрелочками <== пометил.. оказывается он не хочет только обновлять данные.. чтение\удаление\вставка проходят нормально.
Вот более полный кусок той процедуры

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
Call CreateConnection
    If CN.State = adStateClosed Then Exit Sub
        CMD.CommandText = "Select * From ORDERS where ID=" & OrderID
        With RS
            ' Проверяем, вдруг нет такого заказа и что-то пошло не так
            RSCHK.Open Source:=CMD <============================== Легко открывает
                If RSCHK.EOF Then
                    MsgBox "Заказ с ID " & OrderID & " не найден в таблице заказов!", vbCritical, "Сохранение заказа"
                    GoTo ErrExit
                End If
            RSCHK.Close
        ' Удаляем, если мы уже что-то сохраняли
            CMD.CommandText = "Delete From ORDERS_DATE_PLAN where Order_ID=" & OrderID
                .Open Source:=CMD <============================== Легко удаляет
        ' Вставляем список дат
            CMD.CommandText = "Select * From ORDERS_DATE_PLAN;"
            .Open Source:=CMD
            ' В цикле записываем в базу таблицу
            For iRow = 1 To UBound(ArrDate)
                If ArrDate(iRow, 2) <> "" Then
                    .AddNew
                        !Order_ID = OrderID
                        !DATE_SECTOR = ArrDate(iRow, 1)
                        !DATE_DESCRIPTION = ArrDate(iRow, 2)
                        !PLAN_DATE = Replace(ArrDate(iRow, 3), ",", ".") ' исправление опечаток
                        !PLAN_DATE2 = Replace(ArrDate(iRow, 4), ",", ".") ' исправление опечаток
                    .Update <============================== И добавляет новые 
                End If
            Next iRow
            .Close
            
        ' Вставляем ключевые даты в таблицу заказов
            CMD.CommandText = "Select * From ORDERS where ID=" & OrderID
                .Open Source:=CMD
                    !PLAN_DATE_FIRSTSTAGE = ДатаНачалаПроизводства
                    !PLAN_DATE_PACK = ДатаУпаковки
                .Update <============================== НО НЕ ХОЧЕТ ОБНОВЛЯТЬ
                .Close
        End With



Конечно, по хорошему бы вынести это из макросов в код хранимой процедуры.. Но когда я это писал, я еще не знал про них )
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694536
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Трассировку ODBC делать через IBExpert? Службы - Trace & Audit?
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694545
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PATRI0TТрассировку ODBC делать через IBExpert?

Ты не поверишь, но трассировку ODBC надо делать через ODBC.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694547
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PATRI0TCMD.CommandText ="Select * From ORDERS where ID=" & OrderID

За склейку текста запроса со значениями - отдельный эцих с гвоздями. За звёздочку -
пожизненный.

PATRI0T.Update <============================== НО НЕ ХОЧЕТ ОБНОВЛЯТЬ

Что совершенно понятно, поскольку ты ему не дал всех нужных полей.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694699
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovЗа склейку текста запроса со значениями - отдельный эцих с гвоздями.

Почему?
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694790
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
29.08.2018 9:45, KreatorXXI пишет:

> Почему?

Штаны на голове.
ODBC прекрасно умеет работать с параметрами.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694870
KreatorXXI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий,

Краткость сестра таланта! Ссылку дайте ТС'у и мне заодно.
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694872
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дада, буду премного благодарен, если расскажите как надо..
И про трассировку через ODBC.. Сейчас ушел гуглить, но вдруг вы подскажите сразу правильный и простой способ..
Это моя первая база, которую я делал, и тут конечно все плохо. Но я учусь )
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694873
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov
Что совершенно понятно, поскольку ты ему не дал всех нужных полей.


Но у других же клиентов работало, и у меня, до обновления.. Что пошло не так?
Где почитать, как правильно работать с ODBC?
Я читал материалы на Интуите и ibase.ru...
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694886
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PATRI0TИ про трассировку через ODBC.. Сейчас ушел гуглить, но вдруг вы подскажите
сразу правильный и простой способ..
Правильный и простой способ: разуть глаза и заметить в ODBC Manager-е вкладку "Trace".

PATRI0TГде почитать, как правильно работать с ODBC?
MSDN.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694893
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
29.08.2018 12:23, KreatorXXI пишет:
> Краткость сестра таланта! Ссылку дайте ТС'у и мне заодно.

kdv ссылку уже дал.
вкратце так:

C:\Windows\system32\odbcad32.exe - это х64(! а не то шо вы подумали !)
C:\Windows\SysWOW64\odbcad32.exe - это х32(!!)

и нэ пэрэпутай, кутузов! (С)
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694906
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мимопроходящий29.08.2018 12:23, KreatorXXI пишет:
> Краткость сестра таланта! Ссылку дайте ТС'у и мне заодно.

kdv ссылку уже дал.
вкратце так:

C:\Windows\system32\odbcad32.exe - это х64(! а не то шо вы подумали !)
C:\Windows\SysWOW64\odbcad32.exe - это х32(!!)

и нэ пэрэпутай, кутузов! (С)


ну у мелкософта всегда было особое чувство индусского юмора
...
Рейтинг: 0 / 0
ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
    #39694968
PATRI0T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Про прощения за тугодумность, но не получается.. Не создается файл трассировки.
Запускал и правильную и неправильную версию ODBC...
...
Рейтинг: 0 / 0
25 сообщений из 70, страница 1 из 3
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / ODBC Firebird Driver "Count field incorrect" после обновления на Win10.1803
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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