Wykorzystanie elementu z DBLookupComboBox w kontrolce ADOQuery

Wykorzystanie elementu z DBLookupComboBox w kontrolce ADOQuery
AD
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 86
0

Mam dość rozbudowane zapytanie w ADOQuery->String(klik na pozycję w Object Inspector). Nie wiem czy tak jest tylko u mnie(Delphi 2009) ale wpisując kod w tym miejscu nie ma możliwości użycia danych z innych kontrolek formularza.

Powiedzmy, że mamy taki kod:

Kopiuj
INSERT INTO T1(ID_ASORT,NAZWA) SELECT ID,NAZWA FROM ASORTYMENT WHERE AKTYWNY=1 ;
UPDATE t1 SET id_dnia=**'''+IntToStr(DBLookupComboBox1.KeyValue)+'''**
 

Po odpaleniu AdoQuery.ExecSQL do zapytania nie jest wstawiany numer pola z DBLookupComboBox.

Uruchomienie tego samego kodu wpisując go w treści programu(AdoQuery.SQL.Text) powoduje poprawne wykonanie zapytania.

Misiekd
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7923
0

a od kiedy to w KODZIE SQL można się odwoływać do kontrolek????

AD
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 86
0

Oczywiście, że można.
taki kod działa prawidłowo:

Kopiuj
 ADOQuery4.SQL.Text:='UPDATE T1 SET data='''+DateToStr(DateTimePicker1.Date)+''' ';
ADOqUERY4.ExecSQL;
SMDBGrid1.RefreshData;
Misiekd
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7923
0

niech ktoś inny wytłumaczy bo ja nie mam ani chęci ani serca tłumaczyć podstaw...

AD
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 86
0

MisiekD to chociaż link podeślij bo nie rozumiem.

Marcin.Miga
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2794
0
  1. SQL Injection
  2. Format daty!!
  3. Tak się po prsotu nie robi
  4. UPDATE t1 SET data=:data
    Parameters.FindByName('data').Value:=...

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.