2012-09-07 115 views
-1

我有一个数据库,其中我得到我的问题,正确的答案/选项从...我想我的应用程序自动生成随机rowIds,这样的问题可以洗牌..当然,已经显示的问题不应该再次显示。我想得到10个问题,然后完成(); ..如何从我的数据库中获得一个随机rowId?

回答

0

使用随机rowId是错误的方法。如果数据库被修改并且ID变得无效,该怎么办?当出现无效的ID时,您必须检查每个ID并重新生成。

相反,您应该在SELECT语句中使用一个LIMIT子句,该子句的随机数小于表中的行数。

+0

也查看这个类似的问题http://stackoverflow.com/questions/12270802/sqlite-android-selecting-random-row –

0

不需要先生成随机ID。只需插入你的行,确保你有questionId列。

当你想读取你的数据库。这样做quizid = rand() ....

之后,你在你的数据库中选择与quizid行

SELECT * FROM quiztable WHERE questionId = quizid 

喜欢的东西,这将使你从数据库中随机一行。

我想你明白了。

相关问题