Delphi→ Взаимодействие Oracle и Delphi

Сен 22, 2010


Для работы с базой данных Oracle наиболее подходящим компонентом является Direct Oracle Access (DOA). После многочисленных неудачных попыток установить этот компонент на используемую мной среду разработки Turbo Delphi Portable (BDS2006), я было отчаялся, и хотел уже устанавливать полную версию Borland Delphi Studio.

Но в конце концов, я одолел установку этого компонента, о чем поведаю вам в этом посте, а в конце статьи вы можете найти ссылки на необходимую IDE и DOA.


Официально стоимость компонента составляла $129 — цена небольшая, если учитывать стоимость базы данных Oracle, но нам нужно «пощупать» компонент и trial версия не для нас. Запускаем установщик doa41d2007.exe, после чего нам предлагают ввести Product Code.


После того, как установщик распакует все файлы и выдаст путь к распакованным файлам, отказываемся от дальнейшей установки. Переходим по указанному пути и копируем содержимое папок Units и Package в директорию Lib вашей среды разработки.

Запускаем Delphi и открываем файл doa41d2006.bdsproj из папки Lib. С правой стороны в Project Manager появится пакет doa41d2006.bpl, нажимаем на него правой кнопкой и выбираем InstallУстановка закончена!


Теперь в панели инструментов (компонентов) в разделе Data Access должны появится объекты DOA. Работать с компонентом достаточно просто — можно кинуть на форму объекты, а можно создать их программно — пример такой реализации я покажу далее.


За авторизацию отвечает объект TOracleSession, объект отвечающий за SQL запросы TOracleQuery — их экземпляры мы создадим и настроим.

var
// Объявляем переменные для экземпляров
OraSession: TOracleSession;
OraQuery: TOracleQuery;

implementation

procedure TForm1.Button1Click(Sender: TObject);
var argument: string;
begin
argument := 'admin';
// Создаем экземпляр
OraSession := TOracleSession.Create(Self);
// Устанавливаем параметры
OraSession.LogonUsername := 'login';
OraSession.LogonPassword := 'pass';
OraSession.LogonDatabase := 'database';
// Авторизуемся
OraSession.LogOn;
// Создаем экземпляр
OraQuery := TOracleQuery.Create(Self);
// Связываем экземпляры между собой
OraQuery.Session := OraSession;
// Добавляем строку запроса, где :arg переменная
OraQuery.SQL.Add('SELECT USERNAME FROM USERS WHERE LOGIN=:arg');
// Объявляем переменную arg типа String
OraQuery.DeclareVariable('arg', otString);
// Присваиваем переменной arg значение argument
OraQuery.SetVariable('arg', argument);
// Выполняем запрос
OraQuery.Execute;
// Отображаем значение поля USERNAME
ShowMessage(OraQuery.Field('USERNAME'));
// Освобождаем экземпляр
OraQuery.Free;
// Выходим из сеанса
OraSession.LogOff;
// Освобождаем экземпляр
OraSession.Free;
end;



Скачать doa2006.zip

Похожие статьи:

  1. Portable Delphi
  2. Установка Indy на Portable Delphi
  3. Использование XML в Delphi (msxml_tlb)
  4. Компонент Antigate для Delphi
  5. Привязка к железу в Delphi

Добавить комментарий

Ваш адрес email не будет опубликован.