AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken UnpreparedExecute führt SQL doppelt aus
Thema durchsuchen
Ansicht
Themen-Optionen

UnpreparedExecute führt SQL doppelt aus

Ein Thema von himitsu · begonnen am 7. Aug 2014 · letzter Beitrag vom 9. Aug 2014
Antwort Antwort
Benutzerbild von himitsu
himitsu

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

AW: UnpreparedExecute führt SQL doppelt aus

  Alt 8. Aug 2014, 20:38
Am Besten wäre es, wenn das garnicht erst doppelt ausführt.
Und das mit dem "nach Typ sehen" ... dann sollte doch SELECT pg_sleep(15) genauso wie SELECT pg_sleep(15), 1 ausgeführt werden, was es aber nicht tut.

Das COALESCE war einfach mal ein Versuch, in dem einen praxsisfernen TestSQL auszuprovieren, was passiert, wenn man die Funktion in einer Anderen versteckt, mit dem Ergebnis, daß es noch schlimmer wurde.

Schlimm ist ja, daß man oft garnicht erkennen kann, ob es doppelt ausgeführt wird. Womit man jetzt noch garnicht weiß, ob und wieviele sonstige Abfragen eigentlich doppelt so schnell wären.
Mir ist es eben schon bei Funktionen ala DROP irgendwas oder CREATE irgendwas aufgefallen, wo es dann so schön knallt.


Im PgAdmin kann man ein SQL ausführen, indem man einfach auf Play drückt und fertig.

Im Code tut man zwar oft entscheigen, ob man nur ein Execute macht, oder ein Open mit auslesen des Results,
aber an vielen Stellen wird einfach irgendein SQL ausgeführt, ohne daß man jetzt schon weiß wie das mal aussieht
und es gibt im Programm auch eine Edit-Oberfläche, wo es jetzt mehrere Buttons gibt (für Open, Execute und Sonderformen), wo es eigentlich recht praktisch wäre, wenn es da auch mal weniger Buttons gibt, für die man sich entscheiden muß.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 8. Aug 2014 um 20:45 Uhr)
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#2

AW: UnpreparedExecute führt SQL doppelt aus

  Alt 9. Aug 2014, 10:27
Alter Schwede, verzwickt. Ich passe.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: UnpreparedExecute führt SQL doppelt aus

  Alt 9. Aug 2014, 10:45
Zum Glück scheint es so, daß an den wichtigen Stellen nicht doppelt gerechnet (addiert) wird, zumindestens nicht so, daß es aufeinander aufbaut, sonst wären (hoffentlich) schon irgendwo Probleme mit den Ergebnissen aufgefallen.

Aber ich hatte schonmal einen Fall, wo ein SELECT SpeichereVaiable('abc', LeseVariable('abc') + 1) die Variable doppelt hochgezählt hat. (eine 'ne Tabelle mit Name- und Wert-Spalte)
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 9. Aug 2014 um 10:48 Uhr)
  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 00:13 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