Pare un rebus.
Allora tu hai un database costituito nella seguente maniera

DOCENTI(IDDOCPK,NOME, COGNOME);
CLASSI(IDCLAPK,CLASSE);
CONNESSIONE(IDCONPK,IDDOCFK,IDCLAFK,IDMATFK);

e devi inserire un nuovo docente con un eventuale controllo sulla sua esistenza, giusto?

Fai una select su DOCENTI per vedere se esiste e nel caso lo aggiungi una una insert.
Stessa cosa fai per la tabella CONNESSIONE.

Non capisco dove sia la difficoltà..

poi hai parlato di DBGrid, ma a questo punto che c'entra?
P.S: se vuoi un consiglio non usare DBGrid ma le TSTringGRid...