Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Löschen von Datensätzen aus einer Tabelle

Begonnen von Gabi Breitlauch, Februar 01, 2013, 10:08:11

⏪ vorheriges - nächstes ⏩

Gabi Breitlauch

Hallo ihr Lieben,

ich bins ma wieder um euch eine Frage zu stellen über die ihr wahrscheinlich lachen werdet.

Ich bin mir sicher dass die Lösung ganz einfach ist, aber ich kriegs grad echt nicht gebacken.

Also ich habe drei Tabellen. Eine die alle Datensätze enthält für die ich ein Dokument erstellen muss. Dazu zwei Tabellen die Ausnahmen enthalten.

Sprich, ich versuche Access dazu zu bringen die Datensätze aus Tabelle 2 und 3 aus Tabelle 1 zu löschen.

Aber irgendwie hab ich grad den totalen Blackout und weiß nicht weiter. Habs über ne Abfrage versucht mit "Not Like " und dann über den Expression Builder die Felder aus Tabelle 2 und 3 anzugeben die den gleichen Wert vorweisen.

Das will er aber net machen. Ich finde die Datensätze immer noch.

Kann mir jemand helfen?

Danke schön!

database

Hallo,

stehen die Tabellen in Beziehung (1:n) dann können die Datensätze, die auf der 1-Seite der Beziehung stehen erst gelöscht werden, wenn keine zugehörigen Datensätze auf der n-Seite vorhanden sind.
Das Löschen der Datensätze auf der 1-Seite wird verhindert um die referenzielle Integrität der Daten zu wahren.
Würde das nicht so sein stünden nach einer etwaigen Löschaktion verwaiste Daten in den Tabellen auf der n-Seite - was dann wiederum zu einem Datenchaos führen würde.

In deinem Fall habe ich angenommen, dass Tabelle1 die 1-Seite ist und die Tabellen 2 und 3 zu dieser 1:n in Beziehung stehen.

Mache eine Kopie deiner Datenbank und versuche dann per Hand relevante Datensätze aus den Tabellen 2 und 3 zu löschen (die Relevanz zeigt sich an den Werten in den Fremdschlüsselfeldern)
Wenn du dann alle Datensätze mit dem gleichen Fremdschlüssel gelöscht hast, kannst du den Masterdatensatz - mit der gleichen ID wie die Fremdschlüssel aus der Tabelle1 - löschen.

Gabi Breitlauch

Hi Database,

danke für die schnelle Antwort.

Also eine ID haben die Tabellen alle nicht. Die Felder die sie alle gemeinsam haben ist "Kata" (sozusagen die Produktnummer) und "Country".

Ich hab schon versucht Kata und Country zusammenzufügen und die Abfrage darauf basierend laufen zu lassen. Er zeigt mir zwar (im Umkehrschluss) welche Kata&Country Kombination in Tabelle 1 sind, lässt mich diese aber nicht löschen...

Hmmm.... Aber mal so ganz blöd gedacht. Wenn ich die Abfrage auf Kata&Country-Basis laufen lassen und dann ne Löschabfrage in Tabelle 1 basierend auf der Kata&Country-Abfrage, meinste das funktioniert?

Problem ist, die Datenbank an sich is riesig und läuft auch schon ne Weile. Diese spezielle Geschichte ist der letzte Schritt und ich möchte ungern gerade den letzten Schritt mit manuellem Eingreifen "versauen", der Rest läuft nämlich komplett automatisch...

database

Hallo,

Zitat... ich möchte ungern gerade den letzten Schritt mit manuellem Eingreifen "versauen",...
Daher auch mein dezenter Hinweis mit einer Kopie der DB zu testen  ;)

ZitatDie Felder die sie alle gemeinsam haben ist "Kata" (sozusagen die Produktnummer) und "Country".
Stehen die Tabellen in Beziehung und wenn ja, über welche Felder sind sie verbunden?

Nochmal der Hinweis - probiere erstmal nichts auf der Original-DB sondern ausschließlich auf einer Kopie!!

Gabi Breitlauch

Klar. Ich hab mir ne Kopie gezogen und die mit "Fake Data" gefüttert. Originaldaten liegen sowieso bei den Enusern.

Also Beziehungen hatten sie am Anfang gar keine, dann hab ich die auf Kata & Country basis gelinkt. Danach hab ich gar kein Ergebnis mehr bekommen...

Also hab ich alles wieder rausgenommen.

database

Hi,

kannst du mal eine Kopie dieser Fake-DB hochladen (komprimiert/repariert und gezippt)
Die DB sollte Datensätze enthalten, die sich nicht löschen lassen.

und gib bitte auch an welche Datensätze gelöscht werden sollen.

Gabi Breitlauch

Sobald unser Netzwerk irgendwann ma fertig wird die db lokal bei mir zu speichern kriegste ne Kopie...

Muss nur erst alle Schritte davor und danach rausnehmen (sonst kriegen wir das Monster nie hochgeladen...).

Geht also gleich los.

Schon mal vielen lieben Dank Peter!

database

Hallo,

ich muss um 12:15 weg - schau mir das aber dann gerne auch am späteren Nachmittag an!

Gabi Breitlauch

Here you go!

Danke nochmal!!!!



[Anhang gelöscht durch Administrator]

database

Hallo,

ich habe 3 Abfragen erstellt, die nacheinander ausgeführt die Datensätze löschen sollten...  schau dir das mal an.
Zur Vereinfachung habe ich die Tabellen umbenannt  ;D



[Anhang gelöscht durch Administrator]

Gabi Breitlauch

Hi,

ok. Danke!

Ich probier das ma so in mein Monster zu füttern!