Per cortesia potresti chiarirmi un attimo le idee….

devo utilizzare un campo lookup in una tabella.

Ho il mio Ibdatabase con 2 tabelle:
codice:
CREATE TABLE FORNITORI (
    CODICE    VARCHAR(5) NOT NULL,
    NOME      VARCHAR(40));

CREATE TABLE MOVIMENTI (
    ID_MOVIMENTI    INTEGER NOT NULL,
    FORNITORE       VARCHAR(5),
    NUMERO_FATTURA  INTEGER); 

Foreign Keys
ALTER TABLE MOVIMENTI ADD FOREIGN KEY (FORNITORE) REFERENCES FORNITORI (CODICE);
al fine di una buona progettazione del database, devo costruire la tabella MOVIMENTI in qualche maniera particolare….intendo con opzioni che gestiranno il campo lookup (FORNITORE)?

Mi spiego:
nella tabella movimenti il codice fornitore deve essere un campo sia obbligatorio che esistente nella tabella fornitori e inoltre l’esistenza di un record con fornitore X dovra impedire la cancellazione dello stesso fornitore X dalla tabella fornitori.


Nella form di input/modifica dati utilizzo Ibdataset... devo dichiarare il campo fornitori in una maniera particolare?
(ho creato la Foreign key che fa riferimento al codice della tabella fornitori)

Che controlli devo inserire in un programma delphi al fine di ottenere queste funzionalita?
Voi che tecnica utilizzate?

Grazie
fulvio