继续: 今天重新转,哎,居然又能跑了.我就感到奇怪了.非常地,小心地,看着,结果在转换数据表时,... 又出问题了.依然"Access数据库查询出错."
不晓得什么原因, 想必数据库没有关闭? 或是其他原因, 便找了段代码测试, 结果是下面这样的:
Warning: (null)(): Invoke() failed: 发生意外。 Source: Microsoft OLE DB Provider for ODBC Drivers Description: [Microsoft][ODBC Microsoft Access Driver] 客户端的工作过多。 in D:\wwwroot\jxau\wwwroot\conn.php on line 5
Warning: (null)(): Invoke() failed: 发生意外。 Source: ADODB.Recordset Description: 在一个已关闭的或无效连接的对象参照上操作不被允许。 in D:\wwwroot\jxau\wwwroot\conn.php on line 8
Warning: main(): Invoke() failed: 发生意外。 Source: ADODB.Fields Description: 项目在所需的名称或序数中未被发现。 in D:\wwwroot\jxau\wwwroot\conn.php on line 9
Warning: (null)(): Invoke() failed: 发生意外。 Source: ADODB.Recordset Description: 对象关闭时,操作不被允许。 in D:\wwwroot\jxau\wwwroot\conn.php on line 10
Warning: (null)(): Invoke() failed: 发生意外。 Source: ADODB.Recordset Description: 对象关闭时,操作不被允许。 in D:\wwwroot\jxau\wwwroot\conn.php on line 11
Warning: (null)(): Invoke() failed: 发生意外。 Source: ADODB.Connection Description: 对象关闭时,操作不被允许。 in D:\wwwroot\jxau\wwwroot\conn.php on line 13
嗯,我想现在管理员同学该能知道我的问题了吧...我想,这可能是转换程序对数据库操作过频, 超负了. 数据库无法释放所致.
ok, 放上我的这段测试代码- <?PHP
- //创建ADO连接
- $conn = @new COM("ADODB.Connection") or die ("ADO连接失败!");
- $connstr = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" . realpath("/hi_jxau.asp");
- $conn->Open($connstr);
- //创建记录集查询
- $rs = @new COM("ADODB.RecordSet");
- $rs->Open("select * from Dv_Admin",$conn,1,1);
- echo $rs->Fields["username"]->Value;
- $rs->Movenext(); //将记录集指针下移
- $rs->close();
- $conn->close();
- ?>
复制代码 那么我如何释放这些链接呢? 本想写个连接程序关闭连接的,这下无法执行哦...那么解决办法是在转换时单次数据转换要小一些,由于空间cpu限制使用为3%, 故我想单次转换只能为1000-2000吧, 那么我如何在不重启IIS情况下解决这个问题呢?(关键是我没有这个权限哦)
请相关朋友帮助解决这个问题,非常感谢.
这下大家明白我的痛楚了吧... 
[ 本帖最后由 qichangxing 于 2007-9-11 20:44 编辑 ] |