AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Vorhandensein eines Records prüfen

Vorhandensein eines Records prüfen

Ein Thema von hoika · begonnen am 13. Jul 2017 · letzter Beitrag vom 14. Jul 2017
Antwort Antwort
Seite 2 von 2     12
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
7.992 Beiträge
 
Delphi XE4 Professional
 
#11

AW: Vorhandensein eines Records prüfen

  Alt 13. Jul 2017, 19:32
Hallo,
es geht darum, festzustellen,
ob es mindestens einen Record einer bestimmten Where-Klausel gibt.

Select First 1 From RechnungsId From RechnungsPosition Where RechnungsId=1
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von DelphiBandit
DelphiBandit

Registriert seit: 19. Feb 2007
Ort: bei Walsrode
165 Beiträge
 
Delphi 10.4 Sydney
 
#12

AW: Vorhandensein eines Records prüfen

  Alt 13. Jul 2017, 20:10
Sorry, aber ich habe die Frage wie p80286 offensichtlich ebenfalls falsch verstanden. Dafür kannst Du den Hack vergessen, der ist nur um zu prüfen, ob überhaupt ein Datensatz in der Tabelle vorhanden ist.

Und wie Du schon selbst korrekt ergänzt hast, funktioniert das nur für Tabellen ohne gelöschte Datensätze zuverlässig. Damit es nach Löschung wieder funktioniert ist ein Backup mit "Garbage collection" (gbak -g) und anschliessendes Restore notwendig.
Carsten
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
38.586 Beiträge
 
Delphi 10.4 Sydney
 
#13

AW: Vorhandensein eines Records prüfen

  Alt 13. Jul 2017, 20:27
Zitat:
Backup, Restore, ....
Sollte ein Check/Optimize/Analyze/Rpair/... nicht die freien Stellen der gelöschten Records entfernen und die Statistik aktualisieren?



SELECT FIRST muß doch eventuell auch die Sortierung beachten? (wenn die DB daher auch noch erst sortiert, muß erstmal alles gesucht werden)
Mit DISTINCT wird es dann noch schlimmer.
Und bei COUNT muß sowieso alles erstmal gesucht werden.

1 oder true statt * im SELECT dürfte auch etwas sparen, wenn nicht alle Felder der gefundenen/verwendeten Records geladen werden brauchen.
(falls das DBMS nicht schon schlau genug ist und mitbekommt, dass es am Ende eh keines der Felder braucht und sie somit weg lässt)

EXSIST sollte da doch eventuell besser laufen, da dort alles egal ist
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014

Geändert von himitsu (13. Jul 2017 um 20:32 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
7.992 Beiträge
 
Delphi XE4 Professional
 
#14

AW: Vorhandensein eines Records prüfen

  Alt 14. Jul 2017, 08:17
Hallo,
SELECT FIRST muß doch eventuell auch die Sortierung beachten?

Eventuell, wenn ich ein Order By machen würde,
aber für das einfache Erkennen des Vorhandenseins mindestens eines Records ist das ja nicht notwendig.
Heiko
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 +2. Es ist jetzt 14:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf