高手帮看一段简单的程序!在线等!谢谢
我用以下程序把informix里的数据转到SQL里面,现在有一个问题就是有时竟会把informix 里面的一条记录连续转了几百万条重复的那样在转!就像进入死循环一样,但程序看起来没问题啊?而且那只是有时才会,我们用系统自己调动程序的,用人工时从来不会的。我是从informix 读一条然后向 SQL 里写一条这样的原则!请高手帮看看问题在那?谢谢
Dim str_bmj08
On Error Resume Next
strSQLI = "select * from mk_file ' "
connI.CursorLocation = adUseClient
connI.Open strConnI
rsI.Open strSQLI, connI, adOpenKeyset, adLockPessimistic
'****************** 以上是打开 informix 的数据 ************
If Not rsI.EOF Then
rsI.MoveFirst
Do While Not rsI.EOF
If IsNull(rsI( "bmj08 ")) Then
str_bmj08 = "N "
Else
str_bmj08 = "Y "
End If
strSQL = "insert into PL_file()values() "
conn.CursorLocation = adUseClient
conn.Open strconn
'conn.BeginTrans '提交事务开始
com.ActiveConnection = conn
com.CommandText = strSQL
com.Execute
'conn.CommitTrans '提交一个事物
' 以上是写入SQL
conn.Close
Set conn = Nothing
rsI.MoveNext
Loop
Else
rsI.Close
Set rsI = Nothing
connI.Close
Set connI = Nothing
Exit Sub
End If
rsI.Close
Set rsI = Nothing
connI.Close
Set connI = Nothing
[解决办法]
你单步调试一下,另外,检查一下你的游标类型
[解决办法]
跟某个环境有关吧?
[解决办法]
//程序运行很多次都没问题,只是偶尔会那样!真晕啊!感觉真奇怪,我真找不出原因来啦!
那你查查你的操作系统,看看异常时,是否有什么可疑进程
[解决办法]
建议楼主先将on error resume next 去掉执行看一下。
调试时不加加