Unvollständige Anzeige bei Abfrage, korrekt bei View

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Unvollständige Anzeige bei Abfrage, korrekt bei View

Re: Unvollständige Anzeige bei Abfrage, korrekt bei View

von juetho » Di, 04.09.2012 20:36

Danke für die Ratschläge, Robert.

'"direkter SQL-Modus", also im Fenster "Query Design" die Symbolleiste SQL (also das einzelne Symbol "SQL-Kommando direkt ausführen")? Dann kann ich sagen: Wenn dieser Button aktiviert ist, dann funktioniert die Abfrage; wenn er deaktiviert ist, dann gibt es "Syntax Error in SQL expression".

Im Formular hat die Einstellung bei ""SQL-Befehl analysieren" keine Auswirkung - in beiden Fällen gibt es die fehlerhafte Anzeige.

Wegen des Unterschieds View/Abfrage gilt natürlich das Gleiche, was ich in Einführung in SQL über Fat Server und Fat Client geschrieben habe.

Also muss ich mal versuchen, das Problem als Fehlermeldung zu formulieren. Gruß Jürgen

Re: Unvollständige Anzeige bei Abfrage, korrekt bei View

von RobertG » Di, 04.09.2012 18:58

Hallo Jürgen,

die Abfrage läuft, ohne dass Du den direkten SQL-Modus anstellst?
Hast Du einmal probiert, was passiert, wenn Du bei den Eigenschaften des Formulars "SQL-Befehl analysieren → Nein" einstellst?

Gegebenenfalls ist das natürlich auch wieder eine Bugmeldung wert, obwohl allgemein gilt: VIews sind einfacher zu handhaben als Abfragen, da sie sicher von der Datenbank direkt erstellt und vom Code her in ihr gespeichert werden. Je mehr Verbindungsstellen bis zum Formular dazwischenfunken, desto anfälliger wird die Sache.

Gruß

Robert

Unvollständige Anzeige bei Abfrage, korrekt bei View

von juetho » Di, 04.09.2012 18:08

Seltsam. Ich habe in BASE für eine MySQL-Datenbank manuell eine Abfrage in SQL-Ansicht erstellt. "Abfrage ausführen" liefert das gewünschte Ergebnis:

Code: Alles auswählen

select m.id as ID, m.AdrNr as Adr, n.Part as Teil, 
       n.Family_Name as Nachname, n.Prename as Vorname,
       l.Country_Code as Lkz, l.Post_Code as PLZ, 
       Concat_ws(' ', l.Street, l.Home_No, l.Home_alpha) as Straße,
       m.Inserted as 'Neu seit', m.Changed as 'Geändert',
       m.Reminder as Mg
from fibu.ad__main as m
join fibu.ad_name as n on n.id = m.id
join fibu.ad_location as l on l.id = n.id and l.part = n.part
order by m.id, n.Part
Nach der Übernahme in das Formular (neues Formular, dazu Tabellen-Kontrollfeld) werden nur einige Felder angezeigt:
  • ID, Straße (das zusammengesetzte Feld) werden angezeigt. concat_ws habe ich nur wegen der Vereinfachung (statt 2x IFNULL) genommen.
  • Alle anderen Felder bleiben leer.
Wenn ich den SQL-Code identisch als View in der MySQL-Datenbank speichere und diese View als Tabelle dem Formular zuweise, werden alle Feldinhalte korrekt angezeigt. Gibt es für dieses unterschiedliche Verhalten eine nachvollziehbare Erklärung, oder ist das ein Grund für eine Fehlermeldung? Jürgen

Nach oben