我要做的是一个自动试卷生成系统,用VB编程。我把题目和答案,还有一些相关参数都放在ACCESS的列表里,现在的想法是,通过对题目相关参数的设定,系统能自动查询输出满足条件的题目。如果有相同条件的题目,系统能随机选择输出!!
我是新手,所以不知道表达是不是有问题,如果有什么不清楚,请告诉我!!要是有相关资料,请mail给我,谢谢!!!
迫切期待高手们的指点!!只要有用的建议和指点,就一定送分!!多谢多谢!!
mail:[email protected]
我是新手,所以不知道表达是不是有问题,如果有什么不清楚,请告诉我!!要是有相关资料,请mail给我,谢谢!!!
迫切期待高手们的指点!!只要有用的建议和指点,就一定送分!!多谢多谢!!
mail:[email protected]
dim strSQL as string
dim conn as new ADODB.connection
dim rs as new ADODB.recordset strSQL = app.path & "A.mdb"
strSQL = Replace(strSQL, "\\", "\")
With conn
If .State = 1 Then
.Close
End If
.CursorLocation = adUseClient
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & strSQL
.Open
End With With rs
.Open "SELECT Id, IDvalue FROM Table1 WHERE '参数' =--- ORDER BY Id;", conn, adOpenStatic, adLockOptimistic
End With'注意:你需要输出的条目在SELECT后面写,参数在WHERE后面写。你可以先用一个简单的表来测试测试。
If .RecordCount > 1 Then
i = Int(Rnd(-1) * .RecordCount + 1)
.Move i
myID = rs!ID
end with
for i= 0 to rnd
rst.movenext
next i
(rst是adodb.recordcount,rnd是随机数,不过要保证rnd<=rst.recordcount,随便用一个判断就行了)
把当前记录作为选出来的试卷
顺便说一句,vb里面那个用随机化种子生成的并不是真正意义上的随机数,因为随机化种子并没有改变,所以每次都是同一串数字,你去试试把系统当前时间作为随机化种子,应该能实现吧.