Announcement

Collapse
No announcement yet.

Import txt ein Feld doppelte vermeinden

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Import txt ein Feld doppelte vermeinden

    MS-Access 2002
    Ich möchte eine Datei mit nur einem Feld importieren.
    Dabei sollen doppelte vermieden werden.
    Ich habe schon vieles versucht. Das kapiere nicht
    Muss ich einen Primärschlüssel setzen, wenn ja wie/wo
    Setze ich den, kommt Null Wert nicht zugelassen
    Eingabe erforderlich steht auf ja
    Leere Zeichenfolge nein
    Indiziert ja ohne doppelte
    Danke für Antwort vom
    Schüler

  • #2
    Stehen denn schon Nullwerte drin in Deiner Tabelle? Dann lösche sie mal bevor Du Deine Indizes setzt.

    Gruß
    docendo discimus

    Comment


    • #3
      Die Tabelle habe ich mit einem Feld angelegt. Deshalb stehen keine Daten darin. Das sehe ich auch beim Öffnen.
      Gruß
      Hubert

      Comment


      • #4
        Hallo Hubert,

        am einfachsten ist es meistens, die Daten zunächst komplett in eine (temporäre) Tabelle zu importieren und dann nur die gewünschten Datensätze in die echte Tabelle zu kopieren; dabei kannst Du auf SQL Ebene entsprechend einschränken wie hier mit DISTINCT.
        Olaf Helper

        <Blog> <Xing>
        * cogito ergo sum * errare humanum est * quote erat demonstrandum *
        Wenn ich denke, ist das ein Fehler und das beweise ich täglich

        Comment


        • #5
          Besten Dank für die Antwort.
          Das vorgeschlagene Prinzip scheint mir bei zigtausend Datensätzen kaum tragbar und von Sql habe ich keine Ahnung.
          Was tun? Ok SQl lernen, aber das dauert.
          Und in meinem Alter, 74, kann das zu lange dauern.
          Die Lösung wäre ein gutes Buch. Die, die ich kenne, gehen davon aus, dass der Leser schon fast alles kann und deshalb nur Neuerungen beschrieben werden.
          Gruß
          Hubert
          Gruß
          Hubert

          Comment


          • #6
            Als Schnellschuß-Lösung ginge auch Dein erster Ansatz, also das Feld als "Eindeutig" definieren.
            Beim Import wird es dann zum Schluß eine Fehlermeldung geben, das bestimmte Datensätze nicht importiert werden konnten und in die Tabelle "Einfügefehler" geschrieben wurde; alle anderen Datensätze werden aber importiert.

            Ein Feld kannst Du wie folgt als Eindeutig definieren:
            Tabelle in der Einwurfsansicht öffnen, das gewünschte Feld markieren.

            Nun entweder
            - Oben in der Symbolleiste auf den gelben Schlüssel klicken (Primärschlüssel)
            - oder unten in den Eingeschaft "Indiziert" auf "Ja (Ohne Duplikate)

            Der Primärschlüssel unterstützt keine NULL Werte, wenn Du in der Tabelle einen hast, entweder löschen oder eben über die zweite Variante gehen (Unique Index).
            Olaf Helper

            <Blog> <Xing>
            * cogito ergo sum * errare humanum est * quote erat demonstrandum *
            Wenn ich denke, ist das ein Fehler und das beweise ich täglich

            Comment


            • #7
              Hallo,
              so schlimm ist das gbei access gar nicht.
              Auch ohne sql Kenntnisse kann man mit dem Abfragedesigner recht gute Abfragen zusammenstellen.

              In Deinem Fall würde ich die Textdatei in eine Tabelle
              tmp_DeinName importieren.

              Danach eine neue Abfrage erstellen, die eine Tabelle hinzufügen und das gewünschte Feld in die Abfrage ziehen, eine Gruppierung setzenn und Abfrage mit ! starten. Jetzt dürften die Datensätze eindeutig sein.
              Wieder in den Entwurf zurück und die Abfrage unter Menü Abfrage in Tabellenerstellungsabfrage ändern, neuen Tabellennamen angeben und starten.

              Jetzt wird eine neue Tabelle mit den Daten erzeugt.
              Diese Tabelle im Entwurf öffnen und wie oben beschrieben einen primary key auf das Feld etzen. so kommen auch keine neuen Dubletten rein.

              Du kannst mir auch gerne eine Textdatei mit Testdaten senden, die ich mal importieren kann und ich sende dann eine mdb zurück.

              Gruß Stefan
              Application Management
              Microsoft Dynamics NAV - Microsoft Dynamics CRM - Microsoft Access - SQL Server

              Comment


              • #8
                Hallo
                ich habe die Daten bekommen und relativ einfach importieren können.
                Nach setzen einer Gruppierung waren es dann nur noch 1/3 so viele.

                Die DB habe ich mit importierten und bereinigtren Daten zurückgesendet.

                Stefan
                Application Management
                Microsoft Dynamics NAV - Microsoft Dynamics CRM - Microsoft Access - SQL Server

                Comment

                Working...
                X