Quando si ha a che fare con i dataSet o dataTable tipizzati, si può ricevere l’errore (all’atto della select):
“Impossibile attivare i vincoli. Una o più righe contengono valori che violano il vincolo non-null, unique o foreign-key.”
o anche la sua versione inglese
“Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints”
Senza nessun’altra indicazione. Ma c’è un modo per sapere qual’è la colonna in errore e qual’è esattamente la violazione. Basta iterare sulla collezione GetErrors, presente sul datatable. Ad esempio (VB.NET):
Try
Me.Adapter.Fill(dataTable)
Catch ex As Exception
Dim err As DataRow() = dataTable.GetErrors
Dim msg As New StringBuilder
For Each e In err
msg.AppendLine(e.RowError)
Next
End Try
In questo modo la variabile msg conterrà tutte le colonne con un errore e il tipo di errore.