TSQLQuery : How to lock the recording before UpdateSQL ? lazarus / 16-Databases ---------------------------------------------------------------------- Pabdym · 2012-09-30 16:39 Hi, QuotepgConn : TPQConnection Transaction ->pgTransHostName, ... ->[...] pgTrans : TSQLTransaction Action -> caCommitDatabase -> pgConn pgQuery : TSQLQuery Database -> pgConnTransaction -> pgTransSQL -> 'SELECT * FROM dev2012hg;' InsertSQL->'INSERT INTO dev2012hg (hgid, hglogiciel, hgversion, hgprogrammeur, hgtext) VALUES (:hgid, :hglogiciel, :hgversion, :hgprogrammeur, :hgtext);'UpdateSQL-> 'UPDATE dev2012hg set hglogiciel = :hglogiciel, hgversion = :hgversion, hgprogrammeur = :hgprogrammeur WHERE hgid = :old_hgid;'pgDataSource : TDataSource DataSet -> pgQuerypgDBNavigator : TDBNavigator; DataSource -> pgDataSourceOther parameters of the 4 components : by default. My codes : Code: [Select]procedure TForm1.Button1Click(Sender: TObject); begin   pgConn.Connected:= True;   pgQuery.Open; end; procedure TForm1.pgQueryAfterPost(DataSet: TDataSet);  var   pgBooKMark: TBookMark; begin   try     TSQLQuery(DataSet).ApplyUpdates;     TSQLTransaction(TSQLQuery(DataSet).Transaction).Commit;   except     on E: Exception do begin       Showmessage('Problem with updating: ' + E.Message);       TSQLTransaction(TSQLQuery(DataSet).Transaction).Rollback;     end;   end;   TSQLQuery(DataSet).Close;   TSQLQuery(DataSet).Open; end; It works fine, but I need to lock my recording before update or delete.  With 2 TSQLQueries (that of Datasource and the other reserved to lock), it seems to be OK. But, is it the good method ?With a single TSQLQuery (that of Datasource), is it possible to lock the recording before update (or delete) ? Thanks.