2010-03-05 3 views
1

Я пишу несколько скриптов для запуска на старых машинах Windows NT. Я планирую использовать командный скриптовый хост (cscript) для их выполнения. Сценарий запрашивает некоторые данные SQL, и я хочу получить имена полей из RecordSet, но он, похоже, не работает.Можно ли перечислять имена полей набора записей ADO с JavaScript и cscript?

Это код, я использую:

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:

Пробовал это так:

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

Думаю, нам нужно будет увидеть дальше, где вы создаете 'rs'. Кроме того, у вас нет 'On Error Resume Next' perchance, не так ли? – ewall

ответ

2

Попробуйте это:

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

.. затем interate через индекс.

+1

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