Przechodząc do sedna. Napisz klasę z własnym językiem zapytań. Wówczas unikasz pisania przy każdym bardziej skomplikowanym zapytaniu kilku wersji. Piszesz jedno - zunifikowane zapytanie, które Twoja klasa tłumaczy na język konkretnej bazy. Wbrew pozorom - taki zabieg nie jest wcale trudny.
I całuj promotora po rękach, za to, że nie zmusza Cię to pisania tego w PROGRESSie (nie mylić z postgresem)... Ja mam problemy z prostymi zapytaniami do tej bazy - nie ma tam nawet czegoś tak prostego jak klucz obcy...
No i teraz podepnę się pod temacik (po co marnować miejsce w bazie php.pl

Coś czuję bowiem, iż mnie również czekają przejścia z inżynierką, a temat będę starał się dorwać związany właśnie z projektowaniem aplikacji webowych opartych o bazy danych. Inna sprawa - nie pojmuję do końca idei projektowania bazy w ERD - projektując to na zaliczenie - robiłem to "na czuja" - patrząc na napisany wcześniej przez siebie kod struktury...
WYSTARCZY TEGO OFFTOPIC'a - NuLL