Salve ragazzi ho un problema un po (in teoria) banale. Devo cancellare un record di una tabella e non lo posso cancellare perchè il campo data di essa mi solleva un eccezzione.
Questo è il banale codice di cancellazione:
codice:
connessionedb.Open(); SqlCommand comando = new SqlCommand("", connessionedb);
comando.CommandText = "DELETE movimenti WHERE idcliente = @idcliente AND id = @id";
comando.Parameters.AddWithValue("@idcliente", idcliente);
comando.Parameters.AddWithValue("@id", SelectedRow.Id);
comando.ExecuteNonQuery();
Questa l'eccezzione che mi solleva.
codice:
public System.DateTime data { get {
try {
return ((global::System.DateTime)(this[this.tablemovimenti.dataColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("Il valore della colonna \'data\' nella tabella \'movimenti\' è DBNull.", e);
}
}
set {
this[this.tablemovimenti.dataColumn] = value;
}
}
Come vedete mi da un errore dicendomi che il campo è null(infatti nella query d'inserimento il campo viene non inserito (quindi si dovrebbe impostare in automatico in NULL visto che il database accetta valori NULL sul campo DATA)
La cosa strana che se eseguo una QUERY = "DELETE movimenti WHERE idcliente = @idcliente" non mi solleva nulla (naturalmente però mi elimina tutti i record di movimenti di quel cliente e non solo uno specifico)