phpbar.de logo

Mailinglisten-Archive

Re: Datenintegritaet bewahren .. aber wie ?
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Datenintegritaet bewahren .. aber wie ?



Andreas Küster schrieb am Montag, den 27. September 1999:
> [...] Ich habe in einer Datenbank in einer Tabelle Objekte
> gespeichtert mit einer ID als Primaerschluessel und in einer 2ten
> tabelle Namen zu den Objekten (kann zu einem Objekt mehrere NAmen
> geben). Die 2te Tabelle wird mit der ersten ueber eben den genannten
> ID verknuepft.
> So weit geht das auch alles. Nun versuche ich aber innerhalb eines
> Integritaetstestes herauszufinden, ob es in der 2ten Tabelle
> Eintraege mit ID's gibt, die es in der ersten Tabelle gar nicht
> gibt. der umgekehrte Fall ist ja einfach ...
> select * from tab1 where tab1.id=tab2.id;

Das geht schön mit einem LEFT JOIN und dem Test auf NULL-Werte:

  SELECT tab2.id
  FROM   tab2 LEFT JOIN tab1 USING (id)
  WHERE  tab1.id IS NULL;

Wenn es zu einer id aus tab2 keine id in tab1 gibt, dann erzeugt der
LEFT JOIN für tab1 NULL-Werte - und danach kann man testen.

Ciao,
  Martin
-- 
Martin Ramsch <m.ramsch_(at)_computer.org> <URL: http://home.pages.de/~ramsch/ >
PGP KeyID=0xE8EF4F75 FiPr=52 44 5E F3 B0 B1 38 26  E4 EC 80 58 7B 31 3A D7

---
*** Abmelden von dieser Mailingliste funktioniert per E-Mail
*** an mysql-de-request_(at)_lists.4t2.com mit Betreff/Subject: unsubscribe


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive