본문 바로가기
MySql

MySQL How to check for NULL in MySqlDataReader by the column's name?

by 베이스 공부 2020. 10. 21.
반응형

열린 MySqlDataReader 에서 NULL 값을 어떻게 확인할 수 있습니까?

다음은 작동하지 않습니다. 항상 else 를칩니다.

if (rdr.GetString("timeOut") == null)
{
    queryResult.Egresstime = "Logged in";
}
else
{
    queryResult.Egresstime = rdr.GetString("timeOut");
}

rdr.IsDbNull (int i) 은 이름이 아닌 열 번호 만 허용합니다.

 

해결 방법

 

var ordinal = rdr.GetOrdinal("timeOut");
if(rdr.IsDBNull(ordinal)) {
  queryResult.Egresstime = "Logged in";
} else {
  queryResult.Egresstime = rdr.GetString(ordinal);
}//if

또는

if(Convert.IsDBNull(rdr["timeOut"])) {
  queryResult.Egresstime = "Logged in";
} else {
  queryResult.Egresstime = rdr.GetString("timeOut");
}//if

 

참조 페이지 https://stackoverflow.com/questions/4739641

 

 

반응형

댓글