Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Create SQL und fülle sie mit Werten (https://www.delphipraxis.net/194397-create-sql-und-fuelle-sie-mit-werten.html)

nwns 15. Nov 2017 15:36

Datenbank: ADS • Version: 10 • Zugriff über: ADS Query

Create SQL und fülle sie mit Werten
 
Hallo erstmal,
ich habe ein problem mit der erstellung einer SQL Tabelle.
Ich möchte gerne eine Tabelle mit 4 Rows füllen, mit Name, Datum, Uhrzeit, ID
wie mache ich dies ich möchte diese Procedure mit einem Button click ausführen.
Bin neuling.:oops:
Danke im Voraus

hoika 15. Nov 2017 19:25

AW: Create SQL und fülle sie mit Werten
 
Hallo,
auch als Neuling gibt es Google

http://www.delphipraxis.net/73214-ad...e-per-sql.html

himitsu 15. Nov 2017 20:23

AW: Create SQL und fülle sie mit Werten
 
Er will doch kein CREATE TABLE sondern blos ein INSERT machen, oder klingt das nur so?

Also das INSERT-Statement manuell füllen und wegschicken (am Besten mit Parametern)
oder "SELECT * FROM ...", DataSet.Open, DataSet.Insert, DataSet.FieldByName().Value/.AsIrgendwas:=... und dann DataSet.Post.

p80286 15. Nov 2017 21:59

AW: Create SQL und fülle sie mit Werten
 
Da ich ADS nicht näher kenne, hier nur der prinzipielle Aufbau

Delphi-Quellcode:
procedure InsertinDB;
begin
  adsquery.sql:='insert into mytable (id,name,datum,uhrzeit) values(123,'willi wichtig','2017-01-01','23:12');
  adsquery.execsql;
end;

procedure irgendwas.onclick;
begin
  InsertinDB;
end;
Die Syntax ist nicht vollständig und korrekt!
Das soll nur den ungefähren Weg aufzeigen;

Gruß
K-H

joachimd 16. Nov 2017 07:43

AW: Create SQL und fülle sie mit Werten
 
K-Hs Beispiel etwas verbessert:
Code:
procedure InsertinDB;
begin
  adsquery.close; //zur Sicherheit
  adsquery.sql:='insert into mytable (id,name,datum,uhrzeit) ';
  adsquery.sql.add(' values(:id, :name, :datum, :uhrzeit); ');

  //Werte
  adsquery.ParamByName('id').AsInteger := 123;
  adsquery.ParamByName('name').AsString := 'Willi Wichtig';
  adsquery.ParamByName('datum').AsDate := '1.1.2017'; //hier kann locale verwendet werden
  adsquery.ParamByName('uhrzeit').AsTime := '23:12';
  adsquery.execsql;

  // dann den Block ab "Werte" sooft, wie Daten kommen
  adsquery.ParamByName('id').AsInteger := 456;
  adsquery.ParamByName('name').AsString := 'Lisa Simson';
  adsquery.ParamByName('datum').AsDate := '1.10.2017'; //hier kann locale verwendet werden
  adsquery.ParamByName('uhrzeit').AsTime := '01:17';
  adsquery.execsql;

end;

procedure irgendwas.onclick;
begin
  InsertinDB;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:04 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