Ho uno strano problema.
Mi creo un recordset tramite una query su Oracle in cui certi campi o ragguppamenti sono identificati da un alias all'interno del codice sql.
Se creo il mio recordset con cursor e locktype a 3, 3 mi permette di fare il .recordcount ma non mi identifica gli alias.
Se invece utilizzo i cursor 0 o 1 o 2 mi permette di identificare gli alias ma non mi fa il .recordcount che risulta sempre a -1.
Questo è il codice di esempio:
sql = "SLECT CAMPO1 AS mio_alias FROM TABELLA1 WHERE CAMPO1='xxxx';"
'Creo l'oggetto recorset
Set rs = Server.CreateObject("ADODB.Recordset")
'Eseguo la query sul database
rs.Open sql, Conn, 3 , 3
In questo caso l'istruzione di seguito funziona correttamente
count = rs.RecordCount
Ma non funziona
variabile = rs("mio_alias")
Mi da il seguente errore:
ADODB.Recordset error '800a0cc1'
Impossibile trovare l'oggetto nell'insieme corrispondente al nome o al numero richiesto.
/il_mio_script.asp, line 23
Mentre se apro il mio cursore come
rs.Open sql, Conn, 0 , 3
funziona l'alias ma non il RecordCount che risulta uguale a -1.
Come mai?
Qualcuno sa dirmi perchè?
Il tutto è installato sotto IIS 6 su un Windows Server 2003 R2.
Grazie

Rispondi quotando