AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQL in Delpih benutzen
Thema durchsuchen
Ansicht
Themen-Optionen

SQL in Delpih benutzen

Ein Thema von The Madcat · begonnen am 31. Jan 2007 · letzter Beitrag vom 1. Feb 2007
Antwort Antwort
Benutzerbild von The Madcat
The Madcat

Registriert seit: 19. Jun 2006
Ort: Sonsbeck
27 Beiträge
 
#1

SQL in Delpih benutzen

  Alt 31. Jan 2007, 18:00
Datenbank: Paradox • Version: 7 • Zugriff über: TTable + TDatasource
Hallo,
ich hab ein kleines problem beim schreiben eines datenbank-progs.
das meiste hab ich hinbekommen, allerdings SEHR zeitfressend, vorallem wenn ich sehe, dass sortierungen die im prog sekundenlang dauern mit SQL innerhalb von sekundenbruchteilen umgesetzt werden ...

jetzt hab ich SQL allerdings noch nie in delphi benutzt und deswegen hab ich ein bisschen gesucht und wurde an mehreren stellen an das TQuery verwiesen, allerdings hab ich keine ahnung wie man das dings benutzt ...

natürlich hab ich schon die Suche benutzt allerdings nichts gefunden, das mir weiterhilft ...

ich würd mich über ein simples kleines beispiel freuen ^^

MfG und danke im Vorraus
Madcat
Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: SQL in Delpih benutzen

  Alt 31. Jan 2007, 18:20
Mit TTable kannst du kein SQL verwenden, aber mit TQuery(LocalSQL).
Markus Kinzler
  Mit Zitat antworten Zitat
Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: SQL in Delpih benutzen

  Alt 31. Jan 2007, 18:23
Hi!

hier mal ein paar Zeilen, um aus einer Datensatz die
vorhandenen Datensätze anzufordern:
Delphi-Quellcode:
  // Zuvor der Query sagen, um welche Datenbank es geht...
  Query1.DataSource:= ...
  Query1.Database:= ..
  Query1.SQL.Text:= 'SELECT * FROM DeineTabelle';
  Query1.Open; // Bei Select-Statements
  {Jetzt geöffnete Query abarbeiten, bis das Ende erreicht ist }
  while not Query1.EOF do
  begin
    // Hier das die gewünschten Felder auslesen
    ID:= FieldByName(ID).AsInteger; // beispielsweise das Feld "ID"
    Next; // zum nächsten Datensatz weiterspringen
  end;
  Query.Close;
Das SELECT * macht natürlich nur bedingt Sinn, da man
gezielt nur die wirklich benötigten Daten vom Server zum
Client bringen sollte.
Sonst kann auch hier das Ergebnis auf sich warten lassen.

Das ist auch das gute (der Sinn) an einer Query:
Man kann gezielt aus mehreren Tabellen eine Zusammenführung
(Joints) machen und aus der Datenbank lesen.

Ergänzung:
Ersetzte Query1.Open durch Query1.Exec wenn es um
Datenbank-verändernde Statements (Insert, Update, Delete...) geht.


Wie eine Datenbankverbindung aufgebaut wird und über
welche Komponenten ist das wieder eine Sache für sich...


Gruß
Pfoto
Jürgen Höfs
Jürgen Höfs / picoly.de
  Mit Zitat antworten Zitat
Benutzerbild von The Madcat
The Madcat

Registriert seit: 19. Jun 2006
Ort: Sonsbeck
27 Beiträge
 
#4

Re: SQL in Delpih benutzen

  Alt 31. Jan 2007, 22:35
Danke Pfoto, ich denke, das ist genaut das was ich gebraucht hab^^
Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...
  Mit Zitat antworten Zitat
oldmax

Registriert seit: 27. Apr 2006
Ort: Gieboldehausen
167 Beiträge
 
#5

Re: SQL in Delpih benutzen

  Alt 1. Feb 2007, 05:27
Hi
Vielleicht hilft dir mein kleines Tutorial "Datenbank, auch für kleine Anwendungen". Geh einfach über die Autorensuche, dann findest du es schon.
Gruß oldmax
Noch ist mein Rechner mir zu Diensten.... ansonsten habe ich die Macht ihn zu vernichten !
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: SQL in Delpih benutzen

  Alt 1. Feb 2007, 07:14
Hallo,

noch ein Punkt zu Pdx und TQuery.
Das ganze geht nur solange gut, bis
man eine richtige Netzwerkanwendun braucht,
also die Daten auf einem externen Server liegen
und die Datenmenge etwas grösser wird.

Danach wird TQuery extrem lahm im Vergelcih zu TTable.

Am besten gleich ne richtige DB nehmen.


Heiko
Heiko
  Mit Zitat antworten Zitat
Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: SQL in Delpih benutzen

  Alt 1. Feb 2007, 07:27
Wollte noch was ergänzen:

Da ich keine DB-Komponenten benutze, sondern
alles manuell auslese in herkömmliche Komponenten,
nutze ich diesen (wie oben) beschriebenen Weg:

Delphi-Quellcode:
 

  while not Query1.EOF do
  begin
    // Hier das die gewünschten Felder auslesen
    ID:= FieldByName(ID).AsInteger; // beispielsweise das Feld "ID"
    Next; // zum nächsten Datensatz weiterspringen
  end;
Wenn du die Query bzw. Datasource direkt mit einer
DB-sensitiven Komponente verlinkst (z.B. TDBGrid),
werden die Daten natürlich automatisch dort hineingebracht...

Im Delphi-Beispielordner sind diesbezügl. auch noch
Beispiel-Projekte.


Gruß
Pfoto
Jürgen Höfs
Jürgen Höfs / picoly.de
  Mit Zitat antworten Zitat
ManuelR

Registriert seit: 14. Dez 2005
Ort: Backnang
57 Beiträge
 
Delphi 2010 Professional
 
#8

Re: SQL in Delpih benutzen

  Alt 1. Feb 2007, 08:13
Zitat:
Man kann gezielt aus mehreren Tabellen eine Zusammenführung
(Joints) machen und aus der Datenbank lesen.
Joints lassen sich aus Tabellen leider noch nicht machen
Wenn alle Experten sich einig sind, ist Vorsicht geboten (Bertrand Russell)
  Mit Zitat antworten Zitat
Pfoto

Registriert seit: 26. Aug 2005
Ort: Daun
541 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: SQL in Delpih benutzen

  Alt 1. Feb 2007, 11:39
Zitat von ManuelR:
Zitat:
Man kann gezielt aus mehreren Tabellen eine Zusammenführung
(Joints) machen und aus der Datenbank lesen.
Joints lassen sich aus Tabellen leider noch nicht machen
Du Haarspalter
Naja, der Richtigkeit halber nennen sie wir halt: Joins

Gruß
Pfoto
Jürgen Höfs
  Mit Zitat antworten Zitat
ManuelR

Registriert seit: 14. Dez 2005
Ort: Backnang
57 Beiträge
 
Delphi 2010 Professional
 
#10

Re: SQL in Delpih benutzen

  Alt 1. Feb 2007, 15:01
Hi Pfoto,

war ein kleiner Scherz,

abgesehen davon finde ich Deine etwas ausführlicheren Beiträge echt klasse.


Viele Grüsse
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:09 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