SPSS 15 I / O DLL: Изменение существующих случаев
Вопрос
Я пишу приложение в C ++, который интерфейсы с SPSS 15, используя их ввода-выводит DLL.
Наша база данных SPSS выполнена из ряда случаев, каждый с их уникальным «идентификатором».
Что мне нужно сделать, это открыть базу данных в чтении / записи, находить случай сопоставления и изменять некоторые из переменных в соответствии с файлами CSV, которые мои программы разбираются.
Есть 2 очевидных случая с самого начала:
Соответствующий случай не существует (в этом случае я могу легко использовать SPSSOPENAppend (), чтобы добавить корпус.
Соответствующий случай существует. (И это проблемный случай)
В последнем мне нужно использовать SPSSOPENWRITECOPY (), чтобы получить ручку пишета и SPSSOPENREAD (), чтобы иметь возможность чтения. Пока я не слишком увлекаюсь этим, похоже, это единственный способ сделать это с их DLL. Проблема в том, что я не могу переместить указатель корпуса на файл записи (видимо, перемещение указателя корпуса - это только для чтения)
Это означает, что я застрял, пытаясь выяснить, как изменить случай без необходимости повторять все файлы и скопировать все данные, случай по корпусу, пока я не найду дело, которое я заинтересован.
Я хотел бы добавить, что обновление SPSS не является опцией.
Я также хотел бы избежать необходимости вручную итереиваться в каждом конкретном случае и построить новый файл с нуля.
Решение
Я рисунок никто не собирается беспокоить отвечать сейчас, что она решена.
Во всяком случае, в середине базы данных невозможно вставить корпус. Вы могли бы потенциально писать обертки вокруг API, чтобы имитировать его, но в противном случае нет никакого способа сделать то, что я пытаюсь сделать без вручную итерации через каждый случай и копировать его.