Artikel-ID: 225422 - Geändert am: Mittwoch, 24. Januar 2007 - Version: 3.1

ACC97: Äußere Verknüpfung gibt falsche Einträge mit ODBC-Tabellen im Vergleich zu lokalen Tabellen

Moderat: Erfordert grundlegende Kenntnisse in den Bereichen Makros, Programmierung und Interoperabilität.

Auf dieser Seite

Alles erweitern | Alles schließen

Problembeschreibung

Möglicherweise erhalten Sie unterschiedliche Ergebnisse Ausführen einer Abfrage, die eine WHERE-Klausel und eine äußere Verknüpfung zu einer anderen Abfrage auf einer lokalen Tabelle, enthält als Sie für eine verknüpfte ODBC-Tabelle abrufen. Dies geschieht, obwohl der lokalen Tabelle und der verknüpften Tabelle dieselben Daten enthalten.

Ursache

Wenn die Tabellen lokalen sind, wird die WHERE-Klausel vor der äußeren Verknüpfung verarbeitet. Wenn die Tabellen verknüpft sind, werden jedoch die Abfragen kombiniert, in einer einzelnen SQL -Anweisung und die WHERE-Klausel nach der äußeren Verknüpfung verarbeitet wird.

Lösung

Um dieses Problem zu vermeiden, muss die Version von Microsoft Jet 3.51.2723.0 sein oder höher. Installieren Sie Microsoft Jet 3.51 Service Pack 2, um eine neue Version von Jet zu erhalten.

Status

Dieses Problem wurde in Microsoft Jet 3.51 Service Pack 2 behoben.

Weitere Informationen

Weitere Informationen zu Microsoft Jet 3.51 Service Pack 2 finden Sie in der folgenden Artikel der Microsoft Knowledge Base:
172733  (http://support.microsoft.com/kb/172733/EN-US/ ) Aktualisierte Version von Microsoft Jet 3.5 für Download

Schritte zum Reproduzieren des Verhaltens

  1. Erstellen einer neue Datenbank mit den folgenden Tabellen und Abfragen:
       Table: Table1
       -----------------
       Field Name: a
       Data Type: Number
    
       Field Name: b
       Data Type: Text
    
       Table: Table2
       -----------------
       Field Name: a
       Data Type: Number
    
       Field Name: c
       Data Type: Text
    
       Query: Query1
       -------------
       Field: a
       Table: Table2
    
       Field: c
       Table: Table2
       Criteria: "x"
    
       Query: Query2
       ------------------------------
       Join: Table1.[a] -> Query1.[a]
    
       Field: a
       Table: Table1
    
       Field: b
       Table: Table1
    
       Field: c
       Table: Query1
    					
  2. Hinzufügen der folgenden Datensätze zu Tabelle1:
       a     b
       -------
       1     a
       2     b
       3     c 
    					
  3. Die folgenden Einträge zu Tabelle2 hinzufügen:
       a     b
       -------
       1     x
       2     y
       3     z 
    					
  4. Wählen Sie Query2, und klicken Sie dann auf Öffnen .

    Beachten Sie, dass drei Datensätze sind.
  5. Exportieren Sie Tabelle1 und Tabelle2 zu einem SQL Server.
  6. Benennen Sie das Tabelle1 und Tabelle2 in der Access-Datenbank bzw. Table1_local und Table2_local, an.
  7. Erstellen Sie eine Verknüpfung zu Tabelle1 und Tabelle2 auf dem SQL Server. Sie müssen einen Eindeutiger Datensatzbezeichner auswählen.
  8. Benennen Sie die verknüpften Tabellen in Tabelle1 und Tabelle2.
  9. Wählen Sie Query2, und klicken Sie dann auf Öffnen .

    Beachten Sie, dass nur ein Datensatz ist.

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Access 97 Standard Edition
Keywords: 
kbmt kbbug kbfix KB225422 KbMtde
Maschinell übersetzter ArtikelMaschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 225422  (http://support.microsoft.com/kb/225422/en-us/ )
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
Retired KB ArticleDisclaimer zu nicht mehr gepflegten KB-Inhalten
Dieser Artikel wurde für Produkte verfasst, für die Microsoft keinen Support mehr anbietet. Der Artikel wird deshalb in der vorliegenden Form bereitgestellt und nicht mehr weiter aktualisiert.
 

SPRACHE AUSWÄHLEN