ASP向Access插入多条记录的问题

来源:百度知道 编辑:UC知道 时间:2024/09/22 03:09:38
i = 0
Do While i < num
rs.addnew
rs("key_str") = CreatePass(12)
rs("price") = price
rs("g_id") = g_id
rs("valid_time") = valid_time
rs("use_flag") = 0
rs("user_id") = -1
rs.update
i = i + 1
Loop
rs.Close
set rs=Nothing
response.write "生成完毕"

代码如上(ASP的),i = 1~50没问题,但要是50以上,就不能完整执行了,也就是"生成完毕"显示不出来,插入的记录也达不到数量,IIS的ASP延时已经设置成3000秒了,但是没什么改关,用的是Access的数据库!
'插入数据
sql = "SELECT * FROM Keys"
rs.open sql, conn, 3, 3

i = 0
Do While i < num
'调试用
response.write "Insert:" & i & "<br>"
rs.addnew
rs("card_str") = ckAry(i, 0)
rs("key_str") = ckAry(i, 1)
rs("price") = price
rs("g_id") = g_id
rs("valid_time") = valid_time
rs("use

建议改成这样,之间用Sql命令字符串来操作的话,有保证!当然,insert 里的各个字段
字符串类型 就加:' ' 括起来
整型,就不用了!

dim sql
i= 0
do while i< num
sql = "insert into table(key_str,price,g_id,valid_time,use_flag,user_id)" &_
"values('{key_str} ',{price},{g_id},'{valid_time}',{use_flag},{user_id})"

replace(sql , "{key_str}" ,CreatePass(12))
replace(sql , "{price}" ,price)
replace(sql , "{g_id}" ,g_id)
replace(sql , "{valid_time}",valid_time)
replace(sql , "{use_flag}" ,0)
replace(sql , "{user_id}" ,-1)

rs.open sql,conn
rs.close();
loop
set rs=nothing

response.write "生成完毕"

代码看起来没问题啊

timeout 设置长点噢。

<%Server.ScriptTimeout=9999 %> 脚本前面加上这个就好了

操作是否完成 需要一个是 代码的处理时间
Server.ScriptTimeout
还需要一个页面的显示时间
一般 Server.ScriptTimeou