SqlDataReader.IsDBNull(Int32) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
列に格納されている値が存在しない値または欠損値かどうかを示す値を取得します。
public:
override bool IsDBNull(int i);
public override bool IsDBNull (int i);
override this.IsDBNull : int -> bool
Public Overrides Function IsDBNull (i As Integer) As Boolean
パラメーター
- i
- Int32
0 から始まる列序数。
戻り値
指定された列の値が DBNull に等しい場合は true
、それ以外の場合は false
です。
実装
注釈
このメソッドを呼び出して、型指定された get メソッド (、、など) を呼び出す前に null 列の値を確認し、GetByteGetCharエラーが発生しないようにします。
using Microsoft.Data.SqlClient;
class Program
{
static void Main(string[] args)
{
using (var connection = new SqlConnection(@"Data Source=(local);Initial Catalog=AdventureWorks2012;Integrated Security=SSPI"))
{
var command = new SqlCommand("SELECT p.FirstName, p.MiddleName, p.LastName FROM HumanResources.Employee AS e" +
" JOIN Person.Person AS p ON e.BusinessEntityID = p.BusinessEntityID;", connection);
connection.Open();
var reader = command.ExecuteReader();
while (reader.Read())
{
Console.Write(reader.GetString(reader.GetOrdinal("FirstName")));
// display middle name only of not null
if (!reader.IsDBNull(reader.GetOrdinal("MiddleName")))
Console.Write(" {0}", reader.GetString(reader.GetOrdinal("MiddleName")));
Console.WriteLine(" {0}", reader.GetString(reader.GetOrdinal("LastName")));
}
connection.Close();
}
}
}