UniConnection := TUniConnection.Create(nil);
UniConnection.ProviderName := 'DBF';
UniConnection.Database:='C:\base.dbf';
UniConnection.SpecificOptions.Values['DBFFormat'] := 'dfFoxPro2';
UniConnection.SpecificOptions.Values['Direct'] := 'True';
UniConnection.Connect;
//Имя файла - base (base.dbf) определяется в коде create
UniConnection.ExecSQL('CREATE TABLE base (ID NUMERIC, Customer CHAR(50), Notes MEMO)');
UniConnection.Disconnect;
Берёте и читаете
Вы же сами написали "работа идёт через sql запросы",
TUniQuery
UniConnection := TUniConnection.Create(nil);
UniConnection.ProviderName := 'DBF';
UniConnection.Database:='C:\base.dbf';
UniConnection.SpecificOptions.Values['DBFFormat'] := 'dfFoxPro2';
UniConnection.SpecificOptions.Values['Direct'] := 'True';
UniConnection.Connect;
UniQuery1.SQL.Append('SELECT * FROM BASA');
UniQuery1.ExecSQL;На сайте есть документация, в комплекте с компонентами должны быть демо-проекты.
Документация? Как вы думаете какая документация у компонента работающего с 18 БД?
Большая. Как вы думаете - будет там пример запроса или только общая информация?
Только общая информация.
Не работает. Но ведь должно. А вот и нет.
А как Вы собираетесь работать с инструментом не читая инструкции? Вы даже не пытались там что-то найти. Всё что Вам нужно - на этой страничке: UniDAC Basics
SELECT * FROM emp - а я то и не знал. Такой сложный запрос. Как мне помогла эта информация. //На самом деле нет....
UniQuery1.Connection := UniConnection1;
UniQuery1.SQL.Text := 'SELECT * FROM emp';
UniQuery1.Open;Memo1.Lines.Add(IntToStr(Empno) + ' ' + Ename);UniConnection.ProviderName := 'DBF';
UniConnection.Database:=output_file_path;
UniConnection.SpecificOptions.Values['DBFFormat'] := 'dfFoxPro2';
UniConnection.SpecificOptions.Values['Direct'] := 'True';Умею я работать с БД? Да.
Умею писать sql запросы? Да.
Знаю я как работать с БД в Delphi? Да.
Вы ошибаетесь. Все три ответа - Нет.
В следующий раз Вы скажете, что мол, как так - в примере написано пароль 123, а у меня ведь другой!
Извините, тут уже не поможешь.
UniConnection := TUniConnection.Create(self);
UniConnection.ProviderName := 'DBF';
UniConnection.Database:='D:\Project\UniDAC_DBF'; // Здесь не путь с именем файла а только папка с файлами!
UniConnection.SpecificOptions.Values['DBFFormat'] := 'dfdBaseIII'; // Выберите Ваш формат
UniConnection.SpecificOptions.Values['Direct'] := 'True';
UniConnection.Connect;
UniQuery := TUniQuery.Create(self);
UniQuery.Connection := UniConnection;
UniQuery.SQL.Text := 'select * from real'; // Здесь "real" это имя таблицы, т.е. файла real.dbf в папке, указанной выше
UniQuery.Open;
Всё проверено, работает.
А теперь ответ - это особенности работы с конкретной БД.
p.s. UniDac вижу впервые в жизни.
Вы то сами не находите, что ваш код ну как бы...почти мой?
Ошибка. Не найден файл basa.fpt
Есть такое мнение, что нужно модифицировать код выше, для исключения отсутствующих значений memo полей. Сможете?
Нет. Ваш не работает, мой работает.
. Как вы думаете - будет там пример запроса или только общая информация?
Только общая информация.
А почему его у Вас нет? Вы считаете это моя проблема или devart-ов?
Вы этого не умели.
О том, что у Вас база "некомплектная"