AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Access verändert Abfrage nach der Nutzung
Thema durchsuchen
Ansicht
Themen-Optionen

Access verändert Abfrage nach der Nutzung

Ein Thema von LuCSteR · begonnen am 20. Feb 2009 · letzter Beitrag vom 25. Feb 2009
Antwort Antwort
LuCSteR

Registriert seit: 16. Sep 2005
168 Beiträge
 
#1

Access verändert Abfrage nach der Nutzung

  Alt 20. Feb 2009, 13:44
Datenbank: Access • Version: XP • Zugriff über: -
Hi,

ich hab dieses Phänomen jetzt schon zum 2ten Mal.
Und zwar habe ich eine SQL Abfrage, die anhand verschiedener Combobox-Einträgen verschiedene Ergebnisse liefert. (Je nach Auswahl der Combobox Einträge halt). Wenn die Einträge leer sind (qasi Null), dann löscht sich die Abfrage selbst bzw. verändert und speichert sich nach der Nutzung so, dass nur noch "SELECT ;" drin steht. An diesem Pkt. habe ich einfach Initialwerte in den Comboboxen gesetzt, worauf sich die Abfrage jetzt nicht mehr von alleine ändert.

Nun habe ich die Query erweitert um 5 Subselects. Die Abfrage insgesamt liefert auch das richtige Ergebnis. Auch noch solange das Formular, in dem die Abfrage in einem Unterformular ausgegeben wird, nicht geschlossen wird. Sobald man die Form neu öffnen will, geht das nicht, weil ja die Abfrage in Nonsens geändert wurde ("SELECT ;")...

Mir ist aufgefallen das schon sobald die Form geöffnet wird, die Abfrage sich ebenfalls ändert. Ich verstehe blos nicht warum. Wie oben beschrieben hatte ich das Problem schonmal und konnte es durch Initialwerte lösen, sodass die Abfrage auf jeden Fall alle Parameter (bzw. Variablen) mit Werten füllen kann.

Ich häng mal noch die gesamte Abfrage dran, vll bringts was

SQL-Code:
SELECT SS.*,
(SELECT COUNT(*) FROM Garagenvertraege_SIA GV WHERE ((GV.LC_PLZ = SS.SPLZ) AND (GV.LC_STR = SS.SStrassencode) AND (GV.LC_HNR = SS.SHausnummer))) AS ["GV"],
(SELECT COUNT(*) FROM Bezirkbesonderheiten_SIA BB WHERE ((BB.PLZ=SS.SPLZ) AND (BB.STR_CODE=SS.SStrassencode) AND (BB.HAUS_NR=SS.SHausnummer))) AS ["BB"],
(SELECT COUNT(*) FROM Nachsendeinformationen_SIA NSI WHERE ((NSI.PLZ_ALT=SS.SPLZ) AND (NSI.STR_CODE_ALT=SS.SStrassencode) AND (NSI.HNR_ALT=SS.SHausnummer))) AS ["NSI"],
(SELECT COUNT(*) FROM PostCardDaten_SIA PC WHERE ((PC.PLZ=SS.SPLZ) AND (PC.STR_CODE=SS.SStrassencode) AND (PC.HAUS_NR=SS.SHausnummer))) AS ["PC"],
(SELECT COUNT(*) FROM Rueckstellinformationen_SIA RSI WHERE ((RSI.PLZ=SS.SPLZ) AND (RSI.STR_CODE=SS.SStrassencode) AND (RSI.HAUS_NR=SS.SHausnummer))) AS ["RSI"]
FROM Sendungssolldaten_SIA AS SS
WHERE (((SS.Bezirk) Like Forms!Suchfunktion.combobez & "*") And ((SS.SPLZ) Like Forms!Suchfunktion.comboplz & "*") And ((SS.SStrassencode) Like Forms!Suchfunktion.combosc & "*") And ((SS.Sendungsart) Like Forms!Suchfunktion.combosa & "*") And ((SS.Produkttyp) Like Forms!Suchfunktion.combopt & "*") And ((SS.AUSLIEFER_FLAG) Like Forms!Suchfunktion.comboaf & "*"));
Die Abfrage liefert das gewünschte und richtige Ergebnis allerdings nur solange wie das Formular geöffnet ist. hab deshalb eine Sicherungsabfrage angelegt...Klar kann ich per VBA dann die richtige wieder überschreiben aber ich würde gern das Problem beheben.

Grüße lucster
  Mit Zitat antworten Zitat
LuCSteR

Registriert seit: 16. Sep 2005
168 Beiträge
 
#2

Re: Access verändert Abfrage nach der Nutzung

  Alt 23. Feb 2009, 11:28
hatte noch nie jmd so ein problem? :/
  Mit Zitat antworten Zitat
LuCSteR

Registriert seit: 16. Sep 2005
168 Beiträge
 
#3

Re: Access verändert Abfrage nach der Nutzung

  Alt 23. Feb 2009, 14:25
hat sich erledigt.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#4

Re: Access verändert Abfrage nach der Nutzung

  Alt 23. Feb 2009, 14:28
Hi!

Könntest du dann aber trotzdem schreiben, woran es gelegen hat bzw. wie du das Problem lösen konntest?
Falls mal nochmal jemand ein solches Problem hat, ist er dir sicher dankbar...


Ciao, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
LuCSteR

Registriert seit: 16. Sep 2005
168 Beiträge
 
#5

Re: Access verändert Abfrage nach der Nutzung

  Alt 25. Feb 2009, 16:24
Wie beschrieben hatte ich das Problem schon einmal, welches ich seltsamer weise durch Initialwerte in den Comboboxen beheben konnte.
Dachte das es also daran nicht liegen kann.
Durch rumprobieren habe ich dann einfach die Initialwerte nach der erweiterten Abfrage mit den Subselects, diese Werte wieder rausgenommen. Prompt hat es funktioniert. Macht ja auch sinn, wenn man sich die Abfrage bzw. die Where-Klausel genau anschaut.
Mein Initialwert war überall "*". Also wurde immer auf ein "**" am Anfang des Feldes geprüft, was natürlich keinen Sinn macht. Warum es trotzdem mit den Initialwerten vor der Erweiterung geklappt hat verstehe ich leider auch nicht. Access ist sowieso extrem instabil...

Grüße
  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:11 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