On Oct 5, 3:56*am, "Miro" <m...@beero.com> wrote:
> Hi,
>
> I have been struggling with this for a long time now and I cant seem to find
> a solution.
> I have a typed dataset with an int32 column ( that I just added to an access
> database ).
>
> So now within the database I have dbnull's in all the old records that did
> not have this int32.
> So if I read my field I get an exception error.
>
> I put this simple code infront of the code as I have been googling around:
> * * * * * * * * Dim IDNullError As Boolean = False
>
> * * * * * * * * If ShoppingCartBibCustomRow.IsFrontColorIDNull Then
> * * * * * * * * * * IDNullError = True
> * * * * * * * * Else
> * * * * * * * * * * IDNullError = False
> * * * * * * * * End If
>
> but it always returns FALSE - never true.
> In the "Immediate Window" for debugging:
> ? ShoppingCartBibCustomRow.IsFrontColorIDNull
> False
>
> but if I look at the value in the Locals tab...
> + * * * * * * * FrontNameColorID * * * *{"The valuefor column 'FrontNameColorID' in table
> 'ShoppingCartBibCustom' is DBNull."} * * * Integer
>
> so If I actaully do this in the "Immediate window",
> ? ShoppingCartBibCustomRow.FrontNameColorID
> ill get the exception:
> A first chance exception of type 'System.InvalidCastException' occurred in
> Microsoft.VisualBasic.dll
> A first chance exception of type 'System.Data.StrongTypingException'
> occurred in App_Code.rd6a6lcl.dll
>
> So why does it not return that it is a null value in the first place.
>
> Thank you,
>
> Miro
The DBNull type is a singleton class, which means only one DBNull
object exists. The DBNull.Value member represents the sole DBNull
object. DBNull.Value can be used to explicitly assign a nonexistent
value to a database field, although most ADO.NET data providers
automatically assign values of DBNull when a field does not have a
valid value. You can determine whether a value retrieved from a
database field is a DBNull value by passing the value of that field to
the DBNull.Value.Equals method. However, some languages and database
objects supply methods that make it easier to determine whether the
value of a database field is DBNull.Value. These include the Visual
Basic IsDBNull function, the Convert.IsDBNull method, the
DataTableReader.IsDBNull method, and the IDataRecord.IsDBNull method.
Do not confuse the notion of null in an object-oriented programming
language with a DBNull object. In an object-oriented programming
language, null means the absence of a reference to an object. DBNull
represents an uninitialized variant or nonexistent database column.
http://msdn.microsoft.com/en-us/libr...em.dbnull.aspx
Best regards