Прежде всего, я должен заявить, что я полный новичок, когда речь заходит о Delphi, хотя я занимался программированием в Turbo Pascal в школе, около четырнадцати лет назад ...
У меня есть коммерческая программа Delphi, которая использует базу данных dBase и BDE для доступа к ним. Мне в основном нужно связать другое приложение, написанное на C #, с этой базой данных, чтобы иметь возможность выполнять операции SQL, такие как выбор, вставка, обновление и удаление.
К сожалению, использование OLEDB против dBase приводит к повреждению индексов, и только нативные приложения BDE могут безопасно получать доступ к данным.
Общая идея состояла в том, чтобы создать простое консольное приложение Delphi, которое могло бы читать операторы SQL из стандартного ввода (Read / ReadLn) и выводить данные CSV в стандартный вывод (WriteLn).
Как бы я поступил так?
Я успешно получил простой TTable-доступ к работе со следующим кодом:
tbl := TTable.Create(nil);
tbl.DatabaseName := 'Exceline';
tbl.TableName := 'KUNDE.DBF';
tbl.Active := True;
WriteLn(tbl.RecordCount);
tbl.Active := False;
Есть ли способ, которым я мог бы достичь того же, но вместо этого выполняя прямые операторы SQL?