2010-03-05 4 views
1

J'écris des scripts pour les exécuter sur les anciennes machines Windows NT. Je prévois d'utiliser l'hôte de script basé sur une commande (cscript) pour les exécuter. Le script interroge certaines données SQL et je souhaite récupérer les noms de champs à partir du RecordSet, mais cela ne semble pas fonctionner.Est-il possible d'énumérer les noms de champs d'un jeu d'enregistrements ADO avec JavaScript et cscript?

Ce code J'utilise:

rs.open(query, conn, adOpenForwardOnly, adLockReadOnly); 


rs.MoveFirst(); 
while(!rs.eof) { 
for(field in rs.Fields) { 
    WScript.Echo(field.Name); /* outputs nothing */ 

} 
    WScript.Echo(rs.Fields("column")); /* outputs the column value for this record (as expected)*/ 

rs.MoveNext(); 
} 

rs.close(); 

Edit:

Essayé ce ainsi:

while(!rs.eof) { 
    WScript.Echo(rs.Fields.length); /* doesn't print anything */ 
    for(var i = 0; i< rs.Fields.length; i++) { /* loop isn't entered */ 
     WScript.Echo(rs.Fields(i).Name); 
    } 
    rs.MoveNext(); 
} 
+0

Je pense que nous aurions besoin de voir plus loin, où vous créez 'rs'. En outre, vous n'avez peut-être pas 'On Error Resume Next', n'est-ce pas? – ewall

Répondre

2

Essayez ceci:

WScript.Echo(rs.Fields(0).Name); 

..puis interé par l'intermédiaire de l'index.

+1

essayez: WScript.Echo (rs.Fields.count); –

Questions connexes