invece di mettere come chiave primaria il numero del DDT metti l'id della riga e poi leghi la riga invece che al numero del DDT alla riga con il DDT (ovviamente anche in quella tabella dovresti avere l'id come chiave primaria)
La chiave primaria serve per riconoscere con matematica certezza una specifica riga, se pensi che una colonna possa contenere valori uguali in righe diverse allora non deve essere una chiave primaria, al massimo una chiave normale