2009-07-08 15 views
0

Pour une raison inconnue, lorsque j'essaie de lire la propriété RecordCount à partir d'un objet ADODB.Recordset dans ASP il provoque une corruption de données étrange qui ne semble pas suivre un modèle particulier Je peux trouver. J'utilise ASP pour me connecter à une base de données Oracle 10g. Ce qui suit est le code que j'utilise.ADODB Recordset.Recordcount corruption avec oracle (ASP)

c_objRS.Open strSql, objPage.objCn, adOpenStatic, adLockReadOnly, adCmdText 
DB_ReadListCount = c_objRS.RecordCount 

Pour une raison quelconque, certains objets CLOB qui sont lus à partir de ce retour recordset la valeur null SEULEMENT si je l'appelle c_objRS.RecordCount. Si je ne l'appelle pas, ou si j'appelle c_objRS.Close alors c_objRS.Open, alors ça marche très bien. De même, c_objRS.Requery semble résoudre le problème. Je ne veux pas vraiment utiliser ces méthodes pour le moment car je crains un certain niveau de corruption de données en ouvrant et fermant le jeu de résultats et je ne veux pas relancer une autre requête car la table en question peut éventuellement devenir assez énorme.

J'utilise actuellement ODAC 11.1.0.6.21

Toute aide serait très apprécié!

Répondre

0

Essayez MoveNext ou MoveLast puis utilisez MoveFirst. Cela pourrait aider.

0

Essayez ceci:

If Not c_objRS.EOF Then 
    c_objRS.MoveNext 
    DB_ReadListCount = objRS.RecordCount 
Else 
    DB_ReadListCount = 0 
End If