Domanda

Sono la creazione di un dataset client ADO-based, e quando provo ad inserire un valore nullo in un TIntegerField, su Post ottengo Project raised exception class EDatabaseError with message 'Non-nullable column cannot be updated to Null'.

Lo so che ho visto un modo per impostare un TField come annullabile prima, ma non riesco a ricordare dove o come. Qualcuno sa come risolvere questo problema?

EDIT:. Il campo è impostata su Required = false in fase di progettazione, e ho verificato che è ancora in fase di esecuzione falso, ma ho ancora ottenere l'errore

È stato utile?

Soluzione

Hai verificato se il campo db cui questo campo rappresenta hanno un vincolo non nullo?

Altri suggerimenti

MyField.Required := False;

Da aiuto per Delphi 5:

property Required: Boolean;

, ma essere consapevoli di:

property CustomConstraint: String;

Anche alcuni implementazione delle classi ereditato da TDataSet può aggiungere un po 'di logica per conto loro ...

Non so se questo aiuterà ma suona familiare. controllare le proprietà sui campi del set di dati ADO che alimenta i cd. So che nel D7 i cd prende internamente sulla proprietà di sola lettura del set di dati del provider indipendentemente dalla sua propria impostazione in sola lettura. lo stesso problema può rivolgersi al proprietà richiesta.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top