비어 있습니다 :SqlDataReader 개체는 해당 열을 발견하는 방법을 나는 쿼리의 결과를 읽고 일부 열이 비어있는 경우이 내가 시작하는 방법입니다 발견하려고
dr[4].ToString() == String.Empty
IT는 필요한 작업을 만들지 만, 나는 이것이 내가 제대로하고 우아하게 그것을 어떻게 당신이 내게 조언 해 줄 수 있습니다 (이 해킹이 아닌 솔루션)과 같은 돈`t? 하지
비어 있습니다 :SqlDataReader 개체는 해당 열을 발견하는 방법을 나는 쿼리의 결과를 읽고 일부 열이 비어있는 경우이 내가 시작하는 방법입니다 발견하려고
dr[4].ToString() == String.Empty
IT는 필요한 작업을 만들지 만, 나는 이것이 내가 제대로하고 우아하게 그것을 어떻게 당신이 내게 조언 해 줄 수 있습니다 (이 해킹이 아닌 솔루션)과 같은 돈`t? 하지
빈은하지 INT 값에 존재하는 어떤 데이터베이스와 작업 할 때 올바른 것은 유일하고 진정한 "빈"입니다 널를 사용합니다.
SqlDataReader rdr = cmd.ExecuteReader();
int colIndex = read.GetOrdinal("MyColumnName");
while (rdr.Read())
{
// [true | false] your validation goes here!;
if (rdr.IsDBNull(colIndex)){
//value is null
}
}
빈 값으로 0, "또는 1/1/1900을 사용하려면 맞춤 처리가 필요합니다.
이는 지능
Int32? i = rdr.IsDBNull(2) ? (Int32?)null : rdr2.GetInt32(2);
@ChrisMoutray 좋은 지적 – Paparazzi
또 다른 가능성은 nullable 형식을 사용하는 경우 내가
string UserInitialssql = rdr.IsDBNull(2) ? String.Empty : rdr.GetString(2);
을 수행하는 방법이다. 예 :
SqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
int? someNumber = rdr["ColumnName"] as int?;
if (someNumber == null)
// was NULL in database
else
// use someNumber.Value to get int
}
"비어 있음"이라고 말하면 null이 포함됩니까? var/char 유형 열에 대해서만 염려합니까? – attila
@attila 1.NO 2. int 타입 컬럼에 관심이있다 – Yakov