Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   ERROR lob locators cannot span transactions (https://www.clubdelphi.com/foros/showthread.php?t=55158)

Dark_RavenM 09-04-2008 17:49:16

ERROR lob locators cannot span transactions
 
Hola a todos tengo este codigo en delphi 6

procedure TForm1.Button1Click(Sender: TObject);
var
cont:integer;
begin
query1.Close;
IF OpenPictureDialog1.Execute THEN
begin
IF NOT QUERY1.Active THEN QUERY1.Open;
if QUERY1.State in [dsBrowse] then
begin
QUERY1.Insert;
QUERY3.Close;
QUERY3.sql.Clear;
QUERY3.SQL.Add('SELECT COUNT(*) CONT FROM IMAGENES');
QUERY3.OPEN;
cont:=QUERY3.FieldByName('CONT').AsInteger;
QUERY1NOIMAGEN.AsInteger :=cont+1;
QUERY1IMAGEN.LoadFromFile(OpenPictureDialog1.FileName);
QUERY1NUMPARTE.AsString:='Prueba'+IntToStr(cont+1);
QUERY1.Post;
QUERY1.ApplyUpdates;
end;
end
ELSE
SHOWMESSAGE('Se Cancelo Carga de Archivo');
end;

lo que hace es insertar una imagen a una tabla llamada imagenes en un campo blob de oracle 8i y me marca este error lob locators cannot span transactions

lo que hice fue
procedure TForm1.Button1Click(Sender: TObject);
var
cont:integer;
begin
query1.Close;
IF OpenPictureDialog1.Execute THEN
begin
IF NOT QUERY1.Active THEN QUERY1.Open;
if QUERY1.State in [dsBrowse] then
begin
Database1.StartTransaction;
QUERY1.Insert;
QUERY3.Close;
QUERY3.sql.Clear;
QUERY3.SQL.Add('SELECT COUNT(*) CONT FROM IMAGENES');
QUERY3.OPEN;
cont:=QUERY3.FieldByName('CONT').AsInteger;
QUERY1NOIMAGEN.AsInteger :=cont+1;
QUERY1IMAGEN.LoadFromFile(OpenPictureDialog1.FileName);
QUERY1NUMPARTE.AsString:='Prueba'+IntToStr(cont+1);
QUERY1.Post;
QUERY1.ApplyUpdates;
Database1.Commit;
end;
end
ELSE
SHOWMESSAGE('Se Cancelo Carga de Archivo');
end;

agregarle que empesara una transaccion y que le diera commit y ya no marca el error pero solo puedo insertar 1 registro y los demas se insertan pero sin la imagen que estoy seleccionando, alguien tiene alguna idea de como hacerlo?


La franja horaria es GMT +2. Ahora son las 20:19:02.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi