2011-01-13 7 views
3

SQLite Cライブラリにはメソッドsqlite3_column_decltype()があります。しかし、私はAndroidのSQLite APIがこのメソッドを利用できる場所を見つけることができません。 SQLを実行しないで宣言された型の列を取得する方法はありますか(つまり、PRAGMA table_infoを使用しないでください)。AndroidでSQLiteカラムの親和性を取得する

私はAbstractWindowedCursor.isBlob()を使用できましたが、フィールドがNULLの場合はtrueを返します。列の宣言された型に等しい値を保証するものが必要です。

答えて

0

私は最近同じことを思い出していました。私が見つけた最も近いのは、CursorWindowクラスにisString、などのメソッドがあります。しかし、親和性に基づいているかどうかは不明です。これらのメソッドへのインタフェースには、行情報と列情報が必要です。

+1

これは、列の型ではなく値の型を示すようです。 – dan04

+0

はい、私はそれも値の型とみなしました。私の[関連する質問](http://stackoverflow.com/questions/4676056/in-android-is-abstractwindowedcursor-isblob-guaranteed-to-be-correct)を参照してください。 –

+0

@ Neeil:私は答えを投稿した後、あなたの他の質問を見ました。 (私は何とか 'AbstractWindowedCursor.isBlob'への参照を見逃してしまいました;ごめんなさい)それは価値があるのですが、データ型がDouble、Longであっても、SQLiteフローに行き、SQLiteレベルのすべての列にStringを使用していますしかし、私は小滴を使用していないので、それが問題を複雑にする方法を見ることができます。 –

関連する問題