我在将空值与oracle 11g odp.net驱动程序进行比较时遇到问题。与oracle 10g odp.net驱动程序配合使用时效果很好。如果数据库中的列为空,则在数据行中它的字符串值为null

此代码失败:

int parentId =  row[PARENTID] != DBNull.Value ? int.Parse(row[PARENTID].ToString()) : 0;


谢谢

最佳答案

这里 :

var para6 = new OracleParameter("pOrganizationParentId", OracleDbType.Long){
    IsNullable = true,
};

if (string.IsNullOrEmpty(organizationParentId)) {
    para6.Value = null;
} else {
    para6.Value = long.Parse(organizationParentId);
}

10-06 16:11