Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   übergabe des inhaltes eines editfeldes in sql (https://www.delphipraxis.net/189458-uebergabe-des-inhaltes-eines-editfeldes-sql.html)

Rippo 14. Jun 2016 14:23

übergabe des inhaltes eines editfeldes in sql
 
Hallo zusammen

ich habe 3 edit felder(in allen editfeldern kommen zahlen rein)
diese zahlen möchte ich in mein sql übergeben.

Delphi-Quellcode:
SimpleDataSet.DataSet.CommandText := ' Select * from Tabelle where ID = [EditFeld1] and IB = [EditFeld2] and IN = [Editfeld3]
wie bekommen ich den inhalt der editfelder in das sql rein?

himitsu 14. Jun 2016 14:31

AW: übergabe des inhaltes eines editfeldes in sql
 
Parameter? (ParamByName)

Oder direkt in den String einsetzen, aber da natürlich nur, nachdem der Text geprüft oder durch eine Quote-Funktion gejagt wurde.


Genauer geht es nicht, wenn nicht verraten wird, welche DB und vorallem welche Zugriffskomponenten benutzt werden.

baumina 14. Jun 2016 14:39

AW: übergabe des inhaltes eines editfeldes in sql
 
Delphi-Quellcode:
SimpleDataSet.DataSet.CommandText := ' Select * from Tabelle where ID = :ID and IB = :IB and IN = :IN';
SimpleDataSet.DataSet.ParamByName('ID').AsString := EditFeld1.Text;
SimpleDataSet.DataSet.ParamByName('IB').AsString := EditFeld2.Text;
SimpleDataSet.DataSet.ParamByName('IN').AsString := EditFeld3.Text;
ACHTUNG : Ein Feld mit dem Namen "IN" kann zu Problemen führen, da es einen SQL-Operator "in" gibt.

Rippo 14. Jun 2016 14:43

AW: übergabe des inhaltes eines editfeldes in sql
 
Danke

das in id ib war nur beispiel

Rippo 14. Jun 2016 15:26

AW: übergabe des inhaltes eines editfeldes in sql
 
ich hab noch eine frage

wie mache ich es dass wenn ich im edit feld z.b : '01' eintippe dannach ein punkt kommt?

milos 15. Jun 2016 00:58

AW: übergabe des inhaltes eines editfeldes in sql
 
Zitat:

Zitat von Rippo (Beitrag 1340152)
ich hab noch eine frage

wie mache ich es dass wenn ich im edit feld z.b : '01' eintippe dannach ein punkt kommt?

Hi,

Ich glaube da hat gerade keiner verstanden was du da genau meinst :D Vielleicht solltest du uns sagen was du erwartest und wo ein Punkt "kommen" soll ;) Ein wenig Code bei dem du dein Vorhaben schon versucht hast und ein Fehler drin liegt ist auch nicht schlecht.

Freundliche Grüsse

blawen 15. Jun 2016 07:01

AW: übergabe des inhaltes eines editfeldes in sql
 
Zitat:

Zitat von milos (Beitrag 1340203)
Zitat:

Zitat von Rippo (Beitrag 1340152)
ich hab noch eine frage

wie mache ich es dass wenn ich im edit feld z.b : '01' eintippe dannach ein punkt kommt?

Hi,

Ich glaube da hat gerade keiner verstanden was du da genau meinst :D Vielleicht solltest du uns sagen was du erwartest und wo ein Punkt "kommen" soll ;) Ein wenig Code bei dem du dein Vorhaben schon versucht hast und ein Fehler drin liegt ist auch nicht schlecht.

Freundliche Grüsse

Ich vermute mal, das er die Eigenschaft "NumbersOnly" gesetzt hat. Falls ja, diese wieder deaktivieren und die Kontrolle übernehmen:
Delphi-Quellcode:
procedure TForm1.edZahlenfeldKeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9', FormatSettings.DecimalSeparator, #8])
    then key:= #0;
end;

nahpets 15. Jun 2016 11:38

AW: übergabe des inhaltes eines editfeldes in sql
 
Na, dann rate ich mal mit:

Man könnte die Frage auch so verstehen, dass nach der Eingabe von zwei Ziffern automatisch ein Punkt angehängt wird. Also eventuell sowas:
Delphi-Quellcode:
procedure TForm1.edZahlenfeldKeyPress(Sender: TObject; var Key: Char);
begin
  // Nur Ziffern zulassen, andernfalls raus.
  if not (key in ['0'..'9']) then begin
    key:= #0;
    exit;
  end;
  // Sind zwei Ziffern im Edit?
  if Length(edZahlenfeld.Text) = 2 then begin
    edZahlenfeld.Text := edZahlenfeld.Text + '.';
  end;
  // Oder eher sowas?
  if Length(edZahlenfeld.Text) = 2 then begin
    edZahlenfeld.Text := edZahlenfeld.Text + FormatSettings.DecimalSeparator;
  end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:17 Uhr.

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