2011-03-15 44 views
6

我有一個表包含一個BLOB列(它只是16個字節)。我想運行SELECT * FROM myTable WHERE blobColumn = ?表單的查詢並將一個字節數組綁定到該列。理想情況下,我可以說 myDatabase.rawQuery("SELECT * FROM myTable WHERE blobColumn = ?", myByteArray) 或其某些變體,但rawQuery函數僅支持字符串參數 - 儘管查看Android源代碼,但似乎私有方法確實包含bindBlob(int, byte[])Android的SQLite - selection字符串以外的字符串

我當然可以運行查詢SELECT * FROM myTable WHERE blobColumn = x'CAFE1234CAFE1234CAFE1234CAFE1234',但有沒有辦法做到這一點,不需要將blob轉換爲字符串?

回答

0

試試這個作爲你的論點嗎?查詢:

新的String [] {將String.valueOf(mByteArray)}

+0

這不起作用 – zzzzzzzzzzzzzzzzzzzzzzzzzzzzzz 2011-08-23 15:23:00

0

我不相信,你可以比較的Blob字段的內容,而不首先把它。你能否創建一個額外的列並使用某種類型的密鑰加載它,這些密鑰可能是唯一的,並描述它的相關Blob數據?