PDA

Vollständige Version anzeigen : Bedingung in SQLAbfrage wird nicht im Listenfeld angezeigt


steffenreu
28.09.2005, 16:16
Hallo,

ich habe eine Bedingung in einer Abfrage

SELECT ID, IIf(IsNull([Name]),'Kein Name eingetragen';[Name])

Das funktioniert in im Abfragefenster sehr gut.

Nun habe ich aber ein Fomular mit einem Listenfeld, welches mit der Abfrage verbunden ist. Es erscheint aber nirgens der Text „Kein Name eingetragen“...
Wenn ein Name angeben ist, dann erscheint dieser wie gewünscht.
Woran liegt das?

steffenreu
28.09.2005, 20:51
Ich habe jetzt rausgefunden, warum es nicht funktioniert... Was aber eine weitere Frage aufwirft...
Ich muß dazu sagen, das die Tabelle – auf die zugegriffen wird – eine MySQL Tabelle ist.

SELECT ID, Wenn(IsNull([Name]),'Kein Name eingetragen';[Name])
funktioniert in der Abfrageansicht problemlos, aber nicht wenn man diese in einem Listenfeld darstellt.

ABER:
SELECT ID, Wenn([Name]=''),'Kein Name eingetragen';[Name])
funktioniert nicht in der Abfrageansicht, aber ist problemlos in der Listenfeldansicht.... !

Woran liegt das? Da rätselt man stundenlang....

Anne Berg
28.09.2005, 23:13
Woran das liegt und was dahinter steckt, weiß ich nicht, aber vielleicht könnte dies für dich eine Lösung sein:SELECT ID, Wenn(NZ([Name])=""; 'Kein Name eingetragen';[Name])

... da fällt mir allerdings noch auf, dass du Kommas und Semikolons scheinbar beliebig einsetzt!!!

steffenreu
29.09.2005, 19:46
Danke! :-) Jetzt mit NZ funktioniert es.
Wo finde ich eigentlich die Auflistung der möglichen „Funktionen“? wie NZ,Left oder ähnlichem oder wie heißt der Schlüsselbegriff, um in der Hilfe zu einer Auflistung der möglichen Werte zu kommen?