Главная страницаОбратная связьКарта сайта

Простой пример работы с базой данных из DLL

Автор: Steve Schafer

Это простейший DLL, экспортирующий единственную функцию. Вызывающий ее оператор передает функции значение ключа и строку со значением. Функция открывает демонстрационную базу данных BIOLIFE, находит по ключу запись и добавляет строку после всех записей в поле Notes:


library Mydll;

uses
  DBTables;

function Modify(Key: Double; const Info: string): Boolean; export;
var
  Table: TTable;
  Stream: TBlobStream;
begin
  Table := TTable.Create(nil);
  Table.DatabaseName := "D:\";
  Table.TableName := "BIOLIFE";
  Table.TableType := ttParadox;
  Table.Open;
  if Table.FindKey([Key]) then
  begin
    Result := True;
    Table.Edit;
    Stream := TBlobStream.Create(TMemoField(Table.FieldByName("Notes")),
      bmReadWrite);
    Stream.Seek(0, 2);
    Stream.Write(Info[1], Length(Info));
    Stream.Free;
    Table.Post;
  end
  else
    Result := False;
  Table.Free;
end;

exports
  Modify;

begin
end.

Вот как это можно вызвать из приложения:


function Modify(Key: Double; const Info: String): Boolean; far;
external "MYDLL";
...
// Modify(90200, "Васек Трубачев");

и это классно работает.

Поскольку в DLL вы используете BDE, изучите текущие замечания относительно его использования в файле README.TXT.


Обсудить статью на форуме


Если Вас заинтересовала или понравилась информация по разработке на Delph - "Простой пример работы с базой данных из DLL", Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу:

Так же Вы можете задать вопрос по работе этого модуля или примера через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!
   


Copyright © 2008 - 2024 Дискета.info