Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Access - Datensätze ermitteln/löschen, Funktion/Bedingung?
Gehe zu Seite 1, 2  Weiter
zurück: Speicher eines neuens Records weiter: Datenumsortierung ... Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
GForce84
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Okt 2008, 11:37
Rufname:

Access - Datensätze ermitteln/löschen, Funktion/Bedingung? - Access - Datensätze ermitteln/löschen, Funktion/Bedingung?

Nach oben
       Version: Office 2k (2000)

Hallo...
Ich bin wahrhaftig ein Neuling auf dem Gebiet: Access.
Hoffe aber trotz allem – das man mir hier helfen kann, wenn möglich für mich Neuling so einfach wie möglich erklären Smile

Meine Aufgabe besteht darin, aus einer Access-DB mit über 400.000 bereits angelegten Datensätzen, einen Teil der Datensätze zu selektieren/löschen, die die folgende Kriterien erfüllen:

Wichtig sind zwei Spalten der ganzen DB: Versender & Empfänger
Aus der DB sollen all die Datensätzen rausgefiltert/gelöscht werden, wo Versenderdaten = Empfängerdaten sind.

Also angenommen:
1.DB: Versender = 4C Empfänger = 5M
2.DB: Versender = 2T Empfänger = 11C
3.DB: Versender = 5M Empfänger = 5M
4.DB: Versender = 1A Empfänger = 1A

Dann soll Access mir jetzt also die Datensätze löschen aus meiner ursprünglichen DB, wo Versender = Empfänger ist, in meinem Simplen Beispiel, müsste Access dann
Die Datensätze 3+4 rauswerfen.

Was habe ich schon probiert...
Also ich habe mich in der Abfragenansicht mal probiert und unter Kriterien in den Spalten:
Versender Emfpänger
„Zone 4C“ „Zone 4C“
“Zone 1A” “Zone A”
.. usw. angegeben, und dann wieder zurück in die Datenblattansicht, und siehe da.. das hat sogar geklappt. Access hat mir nun nur die Datensätzen angezeigt, deren Kriterien so waren wie oben beschrieben.

Allerdings habe ich festgestellt, dass man nicht unendliche viele Kriterien festlegen kann, nach 5 Zeilen oder so ist Schluss. Oder kann man diese Tabelle einfach erweitern?

Und da komme ich dann gleich zu meiner anderen Frage, Gibt es eine noch einfacherer Lösung als Sprich, kann man nicht einfach diese Bedingung, „Wenn Versender = Empfänger, dann soll Access diesen Datensatz löschen“ irgendwie bestimmen?
Wenn ja – wo genau?

Und ist es auch möglich dass Access durch so eine Abfrage, gleich die Datensätze löscht, die in meinem Fall rausfliegen sollen?
Also nicht noch mal anzeigen, - sondern gleich entfernen aus der Datenbank wo die xxx.xxx Datensätze sich befinden?

Ich hoffe ihr konntet mir folgen, und habt ne Idee wie ich weiter vorgehen kann?
Gruß
eiskalterengel
Macher


Verfasst am:
23. Okt 2008, 12:15
Rufname:
Wohnort: Hildesheim


AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

Bei deiner Abfrage gehst du in die SQL Ansicht.

Dort tippst du ein ->
Code:
SELECT *
FROM   deintabellenname
WHERE  namesdeinesfeldes = deinebedingung (Bsp. 1A).
Weitere Bedingungen hängst du einfach hinten dran.
Code:
SELECT *
FROM   deintabellenname
WHERE  namesdeinesfeldes = deinebedingung
AND    namedeinesfeldes = 5M
usw.
_________________
Exzellenz ist eine Frage des Umfeldes.
GForce84
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Okt 2008, 12:44
Rufname:

AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

@Eiskalterengel,.. danke für deine Antwort...

Aber ich habe mit den Bedingungen noch meine Probleme. Ich weiß nicht an welche stelle ich diese schreiben musss. Kannst du das noch genauer erklären? Wie komm ich in die SQL-Ansicht? Bei mir gibts nur Entwurf- und DAtenblatt-Ansicht.

Und durch welche Infos ersezte ich die platzhalter?
Und kann ich diese SQL-Bedingung beliebig oft schreiben, weil es gibt sehr viele Zonen.
Kannst du mir ein konkretes Beispiel geben?

Gruß


Zuletzt bearbeitet von GForce84 am 23. Okt 2008, 12:50, insgesamt einmal bearbeitet
eiskalterengel
Macher


Verfasst am:
23. Okt 2008, 12:48
Rufname:
Wohnort: Hildesheim

Re: AW: Access - Datensätze ermitteln/löschen, Funktion/Bedi - Re: AW: Access - Datensätze ermitteln/löschen, Funktion/Bedi

Nach oben
       Version: Office 2k (2000)

Schrieb ich doch oben. Du machst deine Abfrage im Entwurfsmodus auf, klickst mit der rechten Maustaste und dann auf SQL Ansicht. Dort kannst du SQL Befehle direkt eingeben.

Platzhalter sind der Name deiner Tabelle, Name des Feldes. Deine Bedingungen ist immer der Wert, der geprüft werden soll..meinetwegen M5 oder A1 oder...

Hast du mehere Abfragen, kannst du diverse SQLs schreiben.

_________________
Exzellenz ist eine Frage des Umfeldes.
GForce84
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Okt 2008, 13:07
Rufname:


AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

Hey tut mir echt leid, wenn ich komische fragen stelle...
aber ich arbeite gerade das 1.mal mit Access, daher diese Fragerei...

Ich habe jetzt in die SQL-Maske folgendes geschrieben:
Code:
SELECT *
FROM   Abfrage3
WHERE  E_P&G  = 1A 
AND    WHERE V_P&G  = 1A
bedeutet das jetzt, dass wenn Spalte E_P&G = 1A und Spalte V_P&G = 1A, dass Access dann diesen Datensatz selektieren also löschen soll oder muss ich dazu noch was machen?

und wie kann ich das dann ansehen? Wenn ich wieder zurück auf die Entwurfsansicht gehen will, dann kommt eine Meldung:
"Zeichen nach Ende von SQL-Anweisung gefunden"

das Bedeutet? gruß
derArb
getting better


Verfasst am:
23. Okt 2008, 13:30
Rufname: derArb
Wohnort: Berlin

AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

Hallo,

heisst die Tabelle Abfrage3 ?
probier mal
Code:
SELECT *
FROM   Abfrage3
WHERE  [E_P&G] = "1A"
AND    [V_P&G] = "1A";
Tabellennamen mit Sonderzeichen müssen in eckige Klammern geschrieben werden.
Werte müssen in Hochkommata
In der normalen Ansicht sollten nun alle dargestellt werden, welche die WHERE Klausel erfüllen

Folgenden code nur mit einer Kopie der DB probieren
Code:
DELETE *
FROM   Abfrage3
WHERE  [E_P&G] = "1A"
AND    [V_P&G] = "1A";
Bei Umschalten auf Normalansicht werden diese Daten gelöscht.

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
GForce84
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Okt 2008, 13:39
Rufname:

AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

@derArb
danke für deine Antwort.
Allerdings versteh ich immer noch nicht was es hiermit auf sich hat :
"Zeichen nach Ende von SQL-Anweisung gefunden"

Ich habe mal in der Hilfe gesucht, ... und da stand was mit (;) < allerdings habe ich in meiner Abfrage überhaupt keine (;) verwandt.
Was kann denn da nicht stimmen?

Wann schreibt man den code mit SELECT und wann mit DELETE ?

Hier ist mein Code :
Code:
SELECT *
FROM   Abfrage3
WHERE  name.[V_P&G-Zone]  = "Zone 1A" 
AND    WHERE name.[E_P&G-Zone]  = "Zone 1A"
Ist das nun so richtig oder nicht?
Würde Access dann all die Datensätze löschen wo V_P&G-zone 1A = E_P&G-zone ist?
derArb
getting better


Verfasst am:
23. Okt 2008, 13:46
Rufname: derArb
Wohnort: Berlin

AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

Hallo,

das 2. WHERE muss weg
Code:
SELECT *
FROM   Abfrage3
WHERE  name.[V_P&G-Zone] = "Zone 1A"
AND    name.[E_P&G-Zone] = "Zone 1A"
SELECT bedeutet: Wähle (selektiere)

Damit zeigt Dir die Abfrage erst mal, ob Du das richtige ausgewählt hast
Code:
DELETE *
FROM   Abfrage3
WHERE  name.[V_P&G-Zone] = "Zone 1A"
AND    name.[E_P&G-Zone] = "Zone 1A"
DELETE bedeutet: Lösche

Probier erst mal das SELECT aus. Das DELETE nur mit einer Kopie der DB dann.

EDIT:
wenn das SELECT klappt und Dir alles richtig angezeigt ist, dann könnte man im
Formular 2 ungebundene Textfelder machen und einen button
Textfeld1: Name: Suchfeld1
Textfeld2: Name: Suchfeld2
Buttonname: btnLoescheSelected
In die Ereignisprozedur des buttons den code
Code:
    'Zum sofortigen Löschen der Daten den Begriff SELECT
    'mit dem Begriff DELETE austauschen
    'ACHTUNG: DELETE löscht die Datensätze unwiderbringlich!!!!!!!!!!!!!!!!!!!!!
    Dim strSQL As String
   
    strSQL = "SELECT * " & _
               "FROM Abfrage3 " & _
              "WHERE name.[V_P&G-Zone] = '" & Me!Suchfeld1 & "' " & _
                "AND name.[E_P&G-Zone] = '" & Me!Suchfeld2 & "'"
    End Sub
'Wenn SELECT im code gewählt ist dann folgender code
    If Not IsNull(Me!Suchfeld1) And Not IsNull(Me!Suchfeld2) Then
        Me.RecordSource = strSQL
    End If
'Wenn DELETE im code gewählt ist dann folgender code
'    If Not IsNull(Me!Suchfeld1) And Not IsNull(Me!Suchfeld2) Then
'        DoCmd.RunSQL strSQL
'   End If

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.


Zuletzt bearbeitet von derArb am 23. Okt 2008, 15:18, insgesamt 5-mal bearbeitet
GForce84
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Okt 2008, 13:54
Rufname:

AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

Was bedeutet ZIRKELBEZUG durch "Abfrage3" verursacht?

Und muss man da noch was schreiben außer der codierung hier:
Code:
SELECT *
FROM   Abfrage3
WHERE  name.[V_P&G-Zone] = "Zone 1A"
AND    name.[E_P&G-Zone] = "Zone 1A"
derArb
getting better


Verfasst am:
23. Okt 2008, 13:59
Rufname: derArb
Wohnort: Berlin

AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

hallo,

das bedeutet, dass Du in der offenen Abfrage3 suchst.
siehe oben
Zitat:
heisst die Tabelle Abfrage3 ?
trag doch mal statt Abfrage3 den Namen der Tabelle ein, in der Du suchen willst
Eckige Klammern nicht vergessen
mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
GForce84
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Okt 2008, 14:20
Rufname:

AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

Hey. Beim ersten Satz
Code:
SELECT *
FROM   FIRMA
WHERE  NAME.[V_P&G-Zone]  = "Zone 1A" 
AND    NAME.[E_P&G-Zone]  = "Zone 1A"
hat es geklappt.

jetzt hatte ich weiter alle anderen geschrieben, also so ca. 30mal den oben beschriebenen satz nur mit anderen Zonen jeweils.
Das Problem ist jetzt das mir ein Syntakfehler angezeigt wird über die ersten 3 Codierungen mit unterschiedlichen Zonen
Was heißt das ?
Willi Wipp
Moderator


Verfasst am:
23. Okt 2008, 14:28
Rufname:
Wohnort: Raum Wiesbaden

Re: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - Re: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

Hi GForce84,

solange Du nicht den beanstandeten Code hier zeigst, wird es schwer das zu beantworten!

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
GForce84
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Okt 2008, 14:51
Rufname:

Re: AW: Access - Datensätze ermitteln/löschen, Funktion/Bedi - Re: AW: Access - Datensätze ermitteln/löschen, Funktion/Bedi

Nach oben
       Version: Office 2k (2000)

Hallo nochmal...

Okay dann hier der Code:
Code:
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 1A" AND [E_P&G-Zone] = "Zone 1A"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 1B" AND [E_P&G-Zone] = "Zone 1B"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 2A" AND [E_P&G-Zone] = "Zone 2A"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 2B" AND [E_P&G-Zone] = "Zone 2B"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 2C" AND [E_P&G-Zone] = "Zone 2C"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 4A" AND [E_P&G-Zone] = "Zone 4A"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 4B" AND [E_P&G-Zone] = "Zone 4B"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 5A" AND [E_P&G-Zone] = "Zone 5A"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 5B" AND [E_P&G-Zone] = "Zone 5B"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 6B" AND [E_P&G-Zone] = "Zone 6B"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 7A" AND [E_P&G-Zone] = "Zone 7A"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 7B" AND [E_P&G-Zone] = "Zone 7B"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 8A" AND [E_P&G-Zone] = "Zone 8A"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 8B" AND [E_P&G-Zone] = "Zone 8B"
Und der Syntaxfehler ist dieser:
Zitat:
Syntaxfehler . in Abfrageausdruck'[V_P&G-Zone] = "Zone 1A" AND [E_P&G-Zone] = "Zone 1A"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 1B" AND [E_P&G-Zone] = "Zone 1B"
SELECT * FROM [Name] WHERE [V_P&G-Zone] = "Zone 1B"
Hoffe ihr könnt mir nochmal helfen.. bei dem fehler.
derArb
getting better


Verfasst am:
23. Okt 2008, 15:13
Rufname: derArb
Wohnort: Berlin

AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun - AW: Access - Datensätze ermitteln/löschen, Funktion/Bedingun

Nach oben
       Version: Office 2k (2000)

derArb am 23. Okt 2008 um 15:00 hat folgendes geschrieben:
Hallo,

in einer Abfrage geht nur eine SELECT Anweisung und nicht 10 SELECT Anweisungen hintereinander
scroll mal hoch, da hab ich Dir nen Vorschlag mit einem Button und 2 ungebundenen
Textfeldern in einem Formular gemacht, damit man immer verschiedene Filterwerte eingeben kann

mfg
derArb

hallo,

oder probiere es mit Parametern in der Abfrage
Code:
SELECT *
FROM   FIRMA
WHERE  [V_P&G-Zone]=[gib den Wert von V_P&G-Zone ein]
AND    [E_P&G-Zone]=[gib den Wert von E_P&G-Zone ein];
Dann öffnen sich 2 Eingabefelder, in welche Du z.B eingibst:
1. Parameterfeld: Zone 4A
2. Parameterfeld: Zone 4A

dann wird alles von Zone 4A angezeigt in der Abfrage
EDIT: der obige buttoncode hatte noch einen Flüchtigkeitsfehler..habs geändert Embarassed

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.


Zuletzt bearbeitet von derArb am 23. Okt 2008, 15:19, insgesamt einmal bearbeitet
GForce84
Im Profil kannst Du frei den Rang ändern


Verfasst am:
23. Okt 2008, 15:17
Rufname:


Re: AW: Access - Datensätze ermitteln/löschen, Funktion/Bedi - Re: AW: Access - Datensätze ermitteln/löschen, Funktion/Bedi

Nach oben
       Version: Office 2k (2000)

GForce84 am 23. Okt 2008 um 15:15 hat folgendes geschrieben:
Ja geht das nicht mit mehreren hintereinander?

Access soll doch alle Datensätze prüfen und die wo Versender un Empfänger gleich sind von den Zonen her, die raus.
warum geht das nicht?


^^^das hab ich schon gemacht. Und er hat mir auch alle angezeigt von Zone A4.
Aber nun dachte ich es gibt auch ne Abfrage wo er mehrere Abfragen parallel machen kann, sodass ich ALLE Zonen wo Empfänger und Versender gleich sind raus löscht. bzw. anzeigt.
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 2
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Funktion mit Berechung "3 Wochen und 3 Tage" 3 fuzzy 485 08. Okt 2004, 17:13
TommyK Funktion mit Berechung "3 Wochen und 3 Tage"
Keine neuen Beiträge Access Tabellen & Abfragen: datensätze suchen 13 mr@ 1514 13. Sep 2004, 10:21
meyster datensätze suchen
Keine neuen Beiträge Access Tabellen & Abfragen: access formularfeld nach bedingung ausfüllen 2 mathias123 802 07. Sep 2004, 12:55
Gast access formularfeld nach bedingung ausfüllen
Keine neuen Beiträge Access Tabellen & Abfragen: 24 felder aus 1 DS in 24 versch. Datensätze kopieren. 3 Mirko 593 30. Jul 2004, 13:55
Willi Wipp 24 felder aus 1 DS in 24 versch. Datensätze kopieren.
Keine neuen Beiträge Access Tabellen & Abfragen: Löschen von Doppelten Datensätzen 2 wgiesel 684 29. Jul 2004, 13:28
wgiesel Löschen von Doppelten Datensätzen
Keine neuen Beiträge Access Tabellen & Abfragen: Summe über mehrere Spalten ermitteln 6 WaterMan 1409 26. Jul 2004, 13:44
lothi Summe über mehrere Spalten ermitteln
Keine neuen Beiträge Access Tabellen & Abfragen: in einem Textfeld letztes Zeichen löschen? 2 mokona.s 1923 19. Jul 2004, 13:24
mokona.s in einem Textfeld letztes Zeichen löschen?
Keine neuen Beiträge Access Tabellen & Abfragen: Summen über mehrere Datensätze bilden 5 Matti_71 1497 03. Jul 2004, 12:38
Willi Wipp Summen über mehrere Datensätze bilden
Keine neuen Beiträge Access Tabellen & Abfragen: Doppelte Datensätze suchen und löschen. 4 Psus82 6651 24. Jun 2004, 16:57
Psus82 Doppelte Datensätze suchen und löschen.
Keine neuen Beiträge Access Tabellen & Abfragen: Suche Formel zur Abfrage doppelte Datensätze 2 sklein2405 2827 24. Jun 2004, 09:22
Willi Wipp Suche Formel zur Abfrage doppelte Datensätze
Keine neuen Beiträge Access Tabellen & Abfragen: Vertikal abgelegte "Datensätze" in Zeilen umwandel 1 hoschi 480 01. Jun 2004, 20:29
Helge Vertikal abgelegte "Datensätze" in Zeilen umwandel
Keine neuen Beiträge Access Tabellen & Abfragen: Duplikate einer Tabelle löschen?! 3 Esel 2108 28. Mai 2004, 08:53
lothi Duplikate einer Tabelle löschen?!
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Macromedia Dreamweaver