Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

The specified field xyz could refer to more than one table - MS Access 2007

Frage Entwicklung Datenbanken

Mitglied: Closed

Closed (Level 1) - Jetzt verbinden

14.06.2013 um 09:54 Uhr, 1143 Aufrufe, 2 Kommentare

Hi,

ich erhalte bei einem meiner Formulare in MS Access 2007 den Fehler "The specified field xyz could refer to more than one table listed in the FROM clause of your SQL statement."

Natürlich habe ich nach dem Fehler schon gegoogelt, aber alle Lösungsvorschläge konnten nicht helfen. Hier meine Versuche:

- Datenbank komprimiert und repariert
- Bei dem SQL Statement darauf geachtet, dass die Tabellennamen mit angegeben werden (da die Felder ja doppelt vorkommen)
- Bei anderen Elementen des Formulars nachgeschaut, ob ein Feld mit identischem Namen abgefragt wird ohne den Tabellennamen anzugeben
- Die Query abgespeichert und diese verwendet

Leider hat alles nichts geholfen.

Das Problem ist auch erst aufgetaucht, als ich ein ORDER BY Statement hinzugefügt habe (dabei handelt es sich um das doppelt vorkommende Feld). Das merkwürdige ist, dass das SQL-Statement ohne Probleme funktioniert. Hier das Statement:

01.
SELECT tblAgenda.Position, tblAgenda.Topic, tblAgenda.Responsible, tblNotes.Note, tblAgenda.Meeting_ID, tblNoteType.Type, tblNotes.NoteResponsible, tblNotes.DueDate, tblNotes.Status, tblNotes.ID, tblAgenda.ID 
02.
FROM tblNoteType INNER JOIN (tblAgenda INNER JOIN tblNotes ON tblAgenda.[ID] = tblNotes.[Agenda_ID]) ON tblNoteType.[ID] = tblNotes.Type_ID 
03.
ORDER BY tblNotes.ID;
Vielen Dank vorab.
Mitglied: Closed
17.06.2013 um 12:49 Uhr
Also die Lösung des Problems liegt in einer Verwendung eines Ausdrucks in der Select Anweisung von einer der IDs und diesen Ausdruck dann im Folgenden weiter zu verwenden.

Ist irgendwie merkwürdig, aber damit funktioniert es.

Beste grüße
Bitte warten ..
Mitglied: Biber
17.06.2013 um 14:22 Uhr
Moin Closed,

die Beschreibug der Ursache habe ich nicht verstanden... ist (von dir) gemeint, dass dem SQL-Parser ein Alias fehlt hinter dem "inner join tblNotes auf tblAgenda"?

Ich finde das Statement in dieser Form auch nicht sonderlich lesbar7wartbar - mir fehlt da auch ein Aliasname/correlation name.

Ich hätte es so (um-)geschrieben:
01.
SELECT tblAgenda.Position, tblAgenda.Topic, tblAgenda.Responsible 
02.
            , tblNotes.Note, tblAgenda.Meeting_ID, tblNoteType.Type 
03.
            , tblNotes.NoteResponsible, tblNotes.DueDate, tblNotes.Status 
04.
            , tblNotes.ID,  tblAgenda.ID 
05.
FROM tblNoteType , tblAgenda, tblNotes 
06.
WHERE       tblAgenda.[ID] = tblNotes.[Agenda_ID] 
07.
   AND      tblNoteType.[ID] = tblNotes.Type_ID 
08.
ORDER BY tblNotes.ID; 
09.
 
Nicht nachvollziehbar ohne die Daten zu sehen ist mir, wieso du mit einem Feld für das ORDER BY auskommst.
Ist die tblNotes.ID denn einmalig über alle tblAgenda.IDs hinweg?

Wie dem auch sei - wäre nett, wenn du noch mal eine Zeile zu der Lösung/dem Problem schreibst.
Denn ich habe es nicht so ganz verstanden, andere möglicherweise auch nicht.

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Datenbanken
gelöst Access 2010 Pivot Table Export keine Werte (4)

Frage von Dr.Cornwallis zum Thema Datenbanken ...

Microsoft Office
gelöst Access 2007 (2)

Frage von Everest zum Thema Microsoft Office ...

Datenbanken
Hilfe in MS Access (2)

Frage von endada zum Thema Datenbanken ...

Datenbanken
gelöst MS Access Datenbank (18)

Frage von endada zum Thema Datenbanken ...

Neue Wissensbeiträge
LAN, WAN, Wireless

Schwachstelle im WPA2 Protokoll veröffentlicht

(3)

Information von colinardo zum Thema LAN, WAN, Wireless ...

Heiß diskutierte Inhalte