AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

sql

Ein Thema von Klaus D. · begonnen am 29. Nov 2003 · letzter Beitrag vom 7. Dez 2003
 
Benutzerbild von Leuselator
Leuselator

Registriert seit: 18. Mär 2003
Ort: Berlin
589 Beiträge
 
Delphi 8 Architect
 
#5

Re: sql

  Alt 1. Dez 2003, 02:20
Hi Klaus,

um das zu beantworten, müsstest Du schon die Tabellendefinitionen rüberrücken und biite nicht abkürzen (ref.Verknüpfen = referentiell verknüpfen?).

Nicht als Meckerei, sondern als Tip gemeint:
1. Man kann auch SQL-Statements so formatieren, das man selbst (und andere) besser den Überblick behalten.
2. Wenn Du schon Aliasse für die Tabellennamen benutzt (ist sinnvoll!), dann steele sie auch den Feldnamen voran - das vermeidet Konfusion.
3. bei 3 Tabellen und mehr, solltest Du Dir angewöhnen, mit joins zu arbeiten - erhöht die Lesbarkeit.
z.B.:
aus
SQL-Code:
SELECT id_Motorart, Motorart, id_Typenschild, sid_Motorart, sid_Fabrikat,
Typ, Drehzahl, Motornummer, Leistung_KW, id_Fabrikat, Fabrikat
FROM tbl_Motorart t1, tbl_Typenschild t2, tbl_Fabrikat t3
WHERE (t1.id_Motorart=t2.sid_Motorart) AND(t2.sid_Fabrikat=t3.id_Fabrikat)
wird dann:
SQL-Code:
    SELECT MA.id_Motorart
           ,MA.Motorart
           ,TS.id_Typenschild
           ,TS.sid_Motorart
           ,TS.sid_Fabrikat
           ,TS.Typ
           ,TS.Drehzahl
           ,TS.Motornummer
           ,TS.Leistung_KW
           ,FB.id_Fabrikat
           ,FB.Fabrikat

      FROM tbl_Motorart AS MA
INNER JOIN tbl_Typenschild AS TS
        ON TS.sid_Motorart = MA.id_Motorart
INNER JOIN tbl_Fabrikat AS FB
        ON FB.id_Fabrikat = MA.sid_Fabrikat

           -- hier kommt dann eine echte Einschränkung, d.h. nicht die Bedingungen
           -- für die Joins sondern z.B.:
     WHERE TS.Leistung_KW > 50
       AND FB.Fabrikat in ('Siemens','Bosch','Allied Signal','Matsushita')
das macht es Dir wesentlich leichter, SQL-Statements zu lesen und der zeitliche Mehraufwand beim Formatieren wird mehr als wettgemacht durch schnelleres lesen (z.B. nach einem halben Jahr )

Also - poste mal Deine TabellenStruktur, und Dir wird gehülft
Gruß
Tim Leuschner
Programmierer = moderner Sysiphos: stets wenn er meint, den Stein seiner Dummheit auf den Berg des Wissens gewuchtet zu haben, erblickt er einen völlig neuen Aspekt und der Dummfels poltert mit Getöse zurück ins Tal der Unwissenheit...
  Mit Zitat antworten Zitat
 


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 16:26 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-2025 by Thomas Breitkreuz