DBNull DBNull DBNull DBNull Class

Definice

Představuje neexistující hodnotu.Represents a nonexistent value. Tuto třídu nelze zdědit.This class cannot be inherited.

public ref class DBNull sealed : IConvertible, System::Runtime::Serialization::ISerializable
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public sealed class DBNull : IConvertible, System.Runtime.Serialization.ISerializable
type DBNull = class
    interface ISerializable
    interface IConvertible
Public NotInheritable Class DBNull
Implements IConvertible, ISerializable
Dědičnost
DBNullDBNullDBNullDBNull
Atributy
Implementuje

Příklady

Následující příklad volá DBNull.Value.Equals metodu k určení, zda pole databáze v databázi kontaktů má platnou hodnotu.The following example calls the DBNull.Value.Equals method to determine whether a database field in a contacts database has a valid value. V takovém případě je hodnota pole připojena k výstupu řetězce v popisku.If it does, the field value is appended to the string output in a label.

private void OutputLabels(DataTable dt)
{
   string label; 

   // Iterate rows of table
   foreach (DataRow row in dt.Rows)
   {
      int labelLen;
      label = String.Empty;
      label += AddFieldValue(label, row, "Title");
      label += AddFieldValue(label, row, "FirstName");
      label += AddFieldValue(label, row, "MiddleInitial");
      label += AddFieldValue(label, row, "LastName");
      label += AddFieldValue(label, row, "Suffix");
      label += "\n";
      label += AddFieldValue(label, row, "Address1");
      label += AddFieldValue(label, row, "AptNo");
      label += "\n";
      labelLen = label.Length;
      label += AddFieldValue(label, row, "Address2");
      if (label.Length != labelLen)
         label += "\n";
      label += AddFieldValue(label, row, "City");
      label += AddFieldValue(label, row, "State");
      label += AddFieldValue(label, row, "Zip");
      Console.WriteLine(label);
      Console.WriteLine();
   }
}

private string AddFieldValue(string label, DataRow row, 
                             string fieldName) 
{                                
   if (! DBNull.Value.Equals(row[fieldName])) 
      return (string) row[fieldName] + " ";
   else
      return String.Empty;
}
Private Sub OUtputLabels(dt As DataTable)
   Dim label As String 

   ' Iterate rows of table
   For Each row As DataRow In dt.Rows
      Dim labelLen As Integer
      label = String.Empty
      label += AddFieldValue(label, row, "Title")
      label += AddFieldValue(label, row, "FirstName")
      label += AddFieldValue(label, row, "MiddleInitial")
      label += AddFieldValue(label, row, "LastName")
      label += AddFieldValue(label, row, "Suffix")
      label += vbCrLf
      label += AddFieldValue(label, row, "Address1")
      label += AddFieldValue(label, row, "AptNo")
      label += vbCrLf
      labelLen = Len(label)
      label += AddFieldValue(label, row, "Address2")
      If Len(label) <> labelLen Then label += vbCrLf
      label += AddFieldValue(label, row, "City")
      label += AddFieldValue(label, row, "State")
      label += AddFieldValue(label, row, "Zip")
      Console.WriteLine(label)
      Console.WriteLine()
   Next
End Sub

Private Function AddFieldValue(label As String, row As DataRow, _
                          fieldName As String) As String
   If Not DbNull.Value.Equals(row.Item(fieldName)) Then
      Return CStr(row.Item(fieldName)) & " "
   Else
      Return Nothing
   End If
End Function

Poznámky

DBNull Třída představuje neexistující hodnotu.The DBNull class represents a nonexistent value. V databázi například sloupec v řádku tabulky nemusí obsahovat žádná data.In a database, for example, a column in a row of a table might not contain any data whatsoever. To znamená, že sloupec se považuje za neexistující místo pouze s hodnotou.That is, the column is considered to not exist at all instead of merely not having a value. DBNull Objekt představuje neexistující sloupec.A DBNull object represents the nonexistent column. Kromě toho zprostředkovatel komunikace s DBNull objekty COM používá třídu k rozlišení mezi VT_NULL variantou, která označuje neexistující hodnotu a VT_EMPTY variantou, která označuje nespecifikovanou hodnotu.Additionally, COM interop uses the DBNull class to distinguish between a VT_NULL variant, which indicates a nonexistent value, and a VT_EMPTY variant, which indicates an unspecified value.

Typ DBNull je třída typu Singleton, což znamená, že existuje DBNull pouze jeden objekt.The DBNull type is a singleton class, which means only one DBNull object exists. Člen představuje jediný DBNullobjekt. DBNull.ValueThe DBNull.Value member represents the sole DBNull object. DBNull.Valuedá se použít k explicitnímu přiřazení neexistující hodnoty k poli databáze, i když většina poskytovatelů dat ADO.NET automaticky přiřazuje hodnoty, DBNull když pole nemá platnou hodnotu.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. Můžete určit, zda hodnota načtená z pole databáze je DBNull hodnotou předáním hodnoty tohoto pole DBNull.Value.Equals metodě.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. Některé jazyky a databázové objekty však poskytují metody, které usnadňují určení, zda je DBNull.Valuehodnota pole databáze.However, some languages and database objects supply methods that make it easier to determine whether the value of a database field is DBNull.Value. Patří sem funkce Visual Basic IsDBNull Convert.IsDBNull , metoda, DataTableReader.IsDBNull metoda a IDataRecord.IsDBNull metoda.These include the Visual Basic IsDBNull function, the Convert.IsDBNull method, the DataTableReader.IsDBNull method, and the IDataRecord.IsDBNull method.

Nepleťte si pojem null v objektově orientovaném programovacím jazyce DBNull s objektem.Do not confuse the notion of null in an object-oriented programming language with a DBNull object. V objektově orientovaném programovacím jazyce null znamená absence odkazu na objekt.In an object-oriented programming language, null means the absence of a reference to an object. DBNullpředstavuje Neinicializovaný typ variant nebo neexistující sloupec databáze.DBNull represents an uninitialized variant or nonexistent database column.

Pole

Value Value Value Value

Představuje jedinou instanci DBNull třídy.Represents the sole instance of the DBNull class.

Metody

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Určuje, zda se zadaný objekt rovná aktuálnímu objektu.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Slouží jako výchozí funkce hash.Serves as the default hash function.

(Inherited from Object)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

Implementuje rozhraní a vrátí data potřebná k DBNull serializaci objektu. ISerializableImplements the ISerializable interface and returns the data needed to serialize the DBNull object.

GetType() GetType() GetType() GetType()

Získá Type aktuální instance.Gets the Type of the current instance.

(Inherited from Object)
GetTypeCode() GetTypeCode() GetTypeCode() GetTypeCode()

Získá hodnotu pro DBNull. TypeCodeGets the TypeCode value for DBNull.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Vytvoří Mělkou kopii aktuální Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Vrátí prázdný řetězec (Empty).Returns an empty string (Empty).

ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider)

Vrátí prázdný řetězec pomocí zadaného IFormatProvidervýrazu.Returns an empty string using the specified IFormatProvider.

Explicitní implementace rozhraní

IConvertible.ToBoolean(IFormatProvider) IConvertible.ToBoolean(IFormatProvider) IConvertible.ToBoolean(IFormatProvider) IConvertible.ToBoolean(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToByte(IFormatProvider) IConvertible.ToByte(IFormatProvider) IConvertible.ToByte(IFormatProvider) IConvertible.ToByte(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToChar(IFormatProvider) IConvertible.ToChar(IFormatProvider) IConvertible.ToChar(IFormatProvider) IConvertible.ToChar(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToDateTime(IFormatProvider) IConvertible.ToDateTime(IFormatProvider) IConvertible.ToDateTime(IFormatProvider) IConvertible.ToDateTime(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToDecimal(IFormatProvider) IConvertible.ToDecimal(IFormatProvider) IConvertible.ToDecimal(IFormatProvider) IConvertible.ToDecimal(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToDouble(IFormatProvider) IConvertible.ToDouble(IFormatProvider) IConvertible.ToDouble(IFormatProvider) IConvertible.ToDouble(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToInt16(IFormatProvider) IConvertible.ToInt16(IFormatProvider) IConvertible.ToInt16(IFormatProvider) IConvertible.ToInt16(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToInt32(IFormatProvider) IConvertible.ToInt32(IFormatProvider) IConvertible.ToInt32(IFormatProvider) IConvertible.ToInt32(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToInt64(IFormatProvider) IConvertible.ToInt64(IFormatProvider) IConvertible.ToInt64(IFormatProvider) IConvertible.ToInt64(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToSByte(IFormatProvider) IConvertible.ToSByte(IFormatProvider) IConvertible.ToSByte(IFormatProvider) IConvertible.ToSByte(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToSingle(IFormatProvider) IConvertible.ToSingle(IFormatProvider) IConvertible.ToSingle(IFormatProvider) IConvertible.ToSingle(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToType(Type, IFormatProvider) IConvertible.ToType(Type, IFormatProvider) IConvertible.ToType(Type, IFormatProvider) IConvertible.ToType(Type, IFormatProvider)

Převede aktuální DBNull objekt na zadaný typ.Converts the current DBNull object to the specified type.

IConvertible.ToUInt16(IFormatProvider) IConvertible.ToUInt16(IFormatProvider) IConvertible.ToUInt16(IFormatProvider) IConvertible.ToUInt16(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToUInt32(IFormatProvider) IConvertible.ToUInt32(IFormatProvider) IConvertible.ToUInt32(IFormatProvider) IConvertible.ToUInt32(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

IConvertible.ToUInt64(IFormatProvider) IConvertible.ToUInt64(IFormatProvider) IConvertible.ToUInt64(IFormatProvider) IConvertible.ToUInt64(IFormatProvider)

Tento převod není podporován.This conversion is not supported. Pokus o provedení tohoto převodu vyvolá InvalidCastException.Attempting to make this conversion throws an InvalidCastException.

Platí pro

Viz také