Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQL.RequestLive (https://www.delphipraxis.net/18058-sql-requestlive.html)

Klaus D. 13. Mär 2004 16:14


SQL.RequestLive
 
Moin
Mit folgenden Code selectiere ich eine Datenmenge von einer einzelnen Tabelle.
Ist das Ergebnis null ,soll der Text in Edit1 der Datenmenge zugefügt werden.
Die Tabelle ist aber nicht bearbeitbar obwohl ich Query.RequestLive auf true setze.
vielleicht sitze ich schon wieder zu lange vor der Kiste und ...u.s.w.
kann mir jemand helfen

Code:
frmDataMod.AdsQuery1.SQL.Text:='SELECT * FROM tbl_Fabrikat
                                 WHERE (UPPER(Fabrikat)like :p1)';

frmDataMod.AdsQuery1.Params[0].AsString :=(ANSIUPPERCASE('%'+Edit1.Text+'%'));
MfG. Klaus

Union 18. Mär 2004 05:48

Re: SQL.RequestLive
 
Hallo Klaus,

es liegt auch nicht am Requestlive, sondern Deine Abfrage gibt einen statischen Cursor zurück. Damit hilft das Requestlive dann gar nichts mehr. Dass ein Static-Cursor erzeugt wird, liegt daran, dass Du LIKE verwendest. Umgehung wäre möglich über Temptable und später Update aus dieser:


Delphi-Quellcode:
frmDataMod.AdsQuery1.RequestLive := true;
frmDataMod.AdsQuery1.SQL.Text:='SELECT * FROM tbl_Fabrikat into '+sTemptable+
                               ' WHERE (UPPER(Fabrikat)like :p1)';

frmDataMod.AdsQuery1.ParamByName('pl').AsString :=(ANSIUPPERCASE('%'+Edit1.Text+'%'));
Open;
Close;

frmDataMod.AdsQuery1.SQL.Text:='SELECT * FROM '+sTemptable;
Open;
Dann hast Du in der TempTable Deine geänderten Eintragungen und mit diesen kannst Du dann weiterarbeiten.

bye


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz