最佳答案
在我的代码中,我希望避免像下面这样的许多检查:
myObj.someStringField = rdr.IsDBNull(someOrdinal)
? string.Empty
: rdr.GetString(someOrdinal);
我想我可以通过这样的方式让我的查询处理 null:
SELECT myField1, [isnull](myField1, '')
FROM myTable1
WHERE myField1 = someCondition
但是我使用的是 SQLite,它似乎不能识别 isnull
函数。我还尝试了在其他数据库(NVL()
、 IFNULL()
和 COALESCE()
)中识别的一些类似的数据库,但 SQLite 似乎不能识别它们中的任何一个。
是否有人有任何建议或知道一个更好的方法来做到这一点。遗憾的是,数据库没有所有字段的默认值。另外,在某些情况下,我需要使用一些 LEFT JOIN
子句,其中一些返回的字段将为空,因为 LEFT JOIN
表中的匹配记录不存在。