2016-07-21 18 views
0

私はIonic2 beta.4 SQLStorageを使用して、列に表示されている値の出現を数えようとしています。SQLStorage Count(*)奇妙な動作

this.storage.query('SELECT COUNT(1) FROM dbstorage WHERE value = ?',[variable]) 

どちら

this.storage.query('SELECT COUNT(*) FROM dbstorage WHERE value = ?',[variable]) 

次のコードは、それがiOS版や他のAndroid携帯電話(キットカット)のために実行されない一方で、サムスンのアンドロイドフォン(ロリポップ)のために正常に動作します

に動作します。

Insert、Select、Create Tableステートメントは、テストされたすべての電話機で正常に動作します。

これに対応する方法はありますか?または、別の簡単なクエリステートメントを使用する必要がありますか?

+0

としてrows.lengthを取得し、「実行されませんか」?もしそうなら、あなたは例外を受け取りますか?例外は何ですか? –

+0

@ MarkRotteveelこんにちは、私のWebコンソールには例外メッセージは表示されていません。 – Gene

+0

@MarkRotteveelクエリは結果を返さず、関数全体をスキップしますが、他のクエリ文は正常に動作します。 – Gene

答えて

0

今のところ、私は誰かがこれに対してより良い答えを持っていない限り、この回避策を使用しています。

「Count」を使用する代わりに、Select文を使用して返される行の長さを数えます。

this.storage.query('SELECT value FROM dbstorage WHERE value= ?',[variable]) 

、あなたは「奇妙な行動」とは何を意味するか、カウント

results.res.rows.length