1.ExecuteReader
GetValue返回的是DBNull
2.ExecuteScalar
Object a = cmd. ExecuteScalar();
如果在数据库后台返回有值是null,则a 是DBNull;
如果数据库中没有满足条件的值,则相当于没有返回任何值,所以a 只是定义了,但没有初始化成功,监控显示是<未定义的值>,前台判断就是null。
3.table.Rows[i][j]
表字段值,没有值就是DBNull
所以:由于数据库中是null而返回来的,则都是DBNull,如果数据库中没有找到的,则是null。