Переписал функцию, в базу объект записывает (правда файл должен быть только в bmp О_о)
procedure TmainForm.btnrep1Click(Sender: TObject);
var w:TBlobType;
begin
OpenDialog1.Execute;
lblrep1.Caption:=OpenDialog1.FileName;
if fdm.TableReports <> nil then
begin
fdm.TableReports.Insert;
fdm.TableReports.FieldByName('id').AsString:='1';// этой строки не должно быть
fdm.TableReports.FieldByName('idstud').AsString:=enter.idUser;
fdm.TableReports.FieldByName('idlab').AsString:='1';
TBlobField(fdm.TableReports.FieldByName('rep')).LoadFromFile(lblrep1.Caption);
fdm.TableReports.Post;
end;
end;
Появилась новая проблема, не работает триггер - автоинкрементное поле. Когда делаю sql - запросы (update, insert) то ID автоматически изменяется. Вот таким образом Insert-Post почему-то не работает.
вот сам код таблицы
CREATE TABLE "REPORT"
(
"ID" INTEGER NOT NULL,
"IDSTUD" INTEGER,
"IDLAB" INTEGER,
"REP" BLOB SUB_TYPE 0 SEGMENT SIZE 80,
PRIMARY KEY ("ID")
);
SET TERM ^ ;
CREATE TRIGGER "TR_8457" FOR "REPORT"
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.ID IS NULL) THEN
NEW.ID = GEN_ID(Gen_8457, 1);
END
^
COMMIT WORK ^
SET TERM ;^
Господа, как мне все-таки стоит поступить в сей ситуации?
Премного благодарю!