Получение Delphi 7 для игры с SQL Server Compact 3.5

У нас есть старое приложение, написанное на Delphi 7. В настоящее время оно подключено к старой базе данных Oracle Lite, которая удаляется. Полномочия, которые были выбраны для перемещения данных в базу данных Microsoft SQL Server Compact. После того, как я потратил много времени на перенос данных в базу данных SQL CE, мне поручили заставить приложение Delphi хорошо играть с новыми базами данных.

Люди, которые должны быть умнее меня (мой босс), говорят мне, что я должен иметь возможность просто изменить соединение, и все должно вернуться в порядок. Тем не менее, я два дня бился головой о монитор, пытаясь настроить соединение ADO в приложении Delphi для работы с нашей новой базой данных SQL CE.

Немного упрощенный пример того, что яя работаю с:

Соединение установлено в глобальном объекте с именем TADOConnection "adoConn ":

procedure TGlobal.DataModuleCreate(Sender: TObject);
begin
    adoConn.ConnectionString := 'Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=path\db.sdf;';
    adoConn.Connected := True;
end;

Вскоре после этого вызывается процедура для заполнения некоторых сообщений. Чтобы попытаться снять приложение, яМы упростили код, чтобы сделать простой запрос и показать результаты в окне сообщения. Процедура получает параметр для строки SQL, но ям пока проигнорируем его и вручную вставим простой оператор выбора:

procedure Select(const SQL: string);
var
    adoQuery : TADOQuery;
begin
    adoQuery := TADOQuery.Create(nil);
    try
        adoQuery.Connection := Global.adoConn;
        adoQuery.SQL.Text := 'select * from CLT_MESSAGES';
        adoQuery.ExecSQL;
        While not adoQuery.Eof do
        begin
            // Here I just created a MessageDlg to output a couple of fields.
            adoQuery.Next;
        end;
    finally
        adoQuery.Free;
    end;
end;

Все компилируется просто отлично, но когда я запускаю приложение, я получаю следующую ошибку: "

Многошаговая операция вызвала ошибки. Проверьте каждое значение статуса. «Я»

мы сделали дополнительную диагностику и обнаружили, что ошибка происходит в adoQuery.ExecSQL. Я'Мы пробовали несколько разных версий строки подключения и несколько разных способов запроса данных, но все они заканчиваются одинаково. Я тоже могуне могу подключиться к базе данных, или я получаю это глупоMutliple шаг» ошибка.

Я заранее ценю любую помощь, которая может быть предложена.

Ответы на вопрос(2)

Ваш ответ на вопрос