2011-01-13 60 views
1

我看到AbstractWindowedCursor有检查列的类型的方法。这非常方便!但是,当我看CursorWindow类,我看到了isBlob()的文档说:如果在Android中,AbstractWindowedCursor.isBlob()是否保证正确?

检查一个字段包含一个BLOB或为空。

那么,这是否意味着如果我运行这个检查,比如说,一个包含NULL值的字符串列,它会返回true?如果是这样,这意味着我不能依靠该方法作为保证类型检查。

回答

1

检查字段是否包含blob或为空。

那么,这是否意味着如果我运行这个检查,比如说一个包含NULL值的String列,它是否会返回true?

我还没有尝试过自己,但我怀疑答案是'是'(无论是或有文档中的拼写错误)。但是,如果首先运行isNull()并返回'true',那么您知道无论如何都不能分辨'column'类型是什么(isXxxx方法检查数据类型'字段'不包含'列'类型)。

但是,如果首先运行isNull()并返回'false',那么运行isBlob(),如果它返回true,则该字段包含一个blob。

+0

今天我了解到SQLite是[动态类型](http://www.sqlite.org/datatype3.html),这意味着每个字段可以有它自己的类型,不一定是列的类型。鉴于此,我敢打赌你是对的。接受这个答案。 – 2011-01-13 21:50:24

相关问题