AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Plötzlich neues Feld nach SELECT - Abfrage
Thema durchsuchen
Ansicht
Themen-Optionen

Plötzlich neues Feld nach SELECT - Abfrage

Ein Thema von Blitzschutz1 · begonnen am 3. Sep 2022 · letzter Beitrag vom 4. Sep 2022
Antwort Antwort
Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.458 Beiträge
 
Delphi 12 Athens
 
#1

AW: Plötzlich neues Feld nach SELECT - Abfrage

  Alt 4. Sep 2022, 07:58
Moin...

Sorry, aber für die Mitlesenden Neulinge...

Der Code ist ein Kandidat für ein umfassendes Refactoring.

1: SQL keine Parameter:
https://de.wikipedia.org/wiki/SQL-Injection
...besser
Delphi-Quellcode:
 
sqlAbfrage := sqlAbfrage +
              ' SELECT tabelle1.*, tabelle2.* ' +
              ' FROM ' +
              ' tabelle1, tabelle2' +
              ' WHERE ' +
              ' tabelle1.ag_id = :DID' +
              ' AND ' +
              ' tabelle2.vst_id = :DID';
 AQuery.ParamByName('DID').AsInteger := ADasaId;
Das SQL so zusammenzusetzen ist nicht mein Fall...die '' + Orgien. Ist aber Geschmackssache...

2. mein geliebtes WITH:
Delphi-Quellcode:
 with Result[Length(Result) - 1] do
.
3. nie auf TRUE prüfen:
...besser
Delphi-Quellcode:
if AShowDebug then
.
Zum Thema:
himitsu hat Recht. Deshalb macht man nur in Ausnahmefällen ein select * from. Bei mehreren Tabellen ist es "verboten".

Geändert von haentschman ( 4. Sep 2022 um 08:09 Uhr)
  Mit Zitat antworten Zitat
Blitzschutz1

Registriert seit: 2. Dez 2011
Ort: Vogtland
27 Beiträge
 
Delphi 12 Athens
 
#2

AW: Plötzlich neues Feld nach SELECT - Abfrage

  Alt 4. Sep 2022, 10:03
Moin...

3. nie auf TRUE prüfen:
...besser
Delphi-Quellcode:
if AShowDebug then
.
Und warum das falsch ist wollte ich gerade fragen, aber es steht ausführlich hier:
https://www.delphipraxis.net/57121-u...t-boolean.html

Danke @haentschman!
Wenn die Klugen nachgeben geschieht das was die Dummen wollen!

Geändert von Blitzschutz1 ( 4. Sep 2022 um 10:07 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.557 Beiträge
 
Delphi 12 Athens
 
#3

AW: Plötzlich neues Feld nach SELECT - Abfrage

  Alt 4. Sep 2022, 15:31
Und "irgendwo" im Namen ist wohl auch nicht ganz richtig? (tag_abc oder iwui_dasag_sa)
if Pos('ag_', AQuery.Fields[f].FullName) > 0 then
Pos(...) = 1

oder besser noch "sprechenden" Code verwenden, der direkt sagt, was er macht.
Delphi-Referenz durchsuchenStartsStr(...)
Delphi-Referenz durchsuchenStartsText(...)
Ein Therapeut entspricht 1024 Gigapeut.
  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 07:23 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