以下对我的oracle数据库的查询在SQL Developer中运行时给出的结果看起来不错。
select *
from guideline$ a left outer join textfragment$ t
on (a.TEXTFRAGMENT_CODE = t.TEXTFRAGMENT$_CODE)
start with a.knowledge$_Code = 71122 and a.guideline$_pcode is null
connect by prior a.guideline$_Code = a.guideline$_pcode
order SIBLINGS by a.tag_order
所有行都已正确填充。当在我的程序中使用OleDbReader.ExecuteReader()
运行相同的查询时,某些行包含特定列的空值,而我的SQL Developer结果中没有这些行。该列的数据类型为CLOB。我看不出为什么有些行有空值,而有些行没有空值。
不确定其他哪些信息会有所帮助。。。
有人对可能发生的事情有什么想法吗?
您的问题可能与使用OleDbDataReader
检索二进制数据的方式有关。
您应该使用GetBytes()
,并遵循本文。