Errore Query DataReader

martedì 06 dicembre 2005 - 12.24

valezz Profilo | Newbie

SAlve di nuovo a tutti, riscrivo un nuovo treath per spiegare meglio il mio pb. [L'altro è : Stampa Contenuto di un DataReader]

Eseguendo una ExecuteReader() ed assegandola ad un oggetto Datareader, ottengo che se provo a stampare il risultato con Response.Write(oggettodatareader.GetString(0)) mi da l'errore: "Nessun dato esistente per la riga/colonna."

La query che deve eseguire è la seguente:
strSQL = "SELECT Utenti.*, Aree.*, Moduli.*, Operazioni.* FROM ((Utenti INNER JOIN (Operazioni INNER JOIN Autorizz_Operazioni_Utenti ON Operazioni.id_operazione=Autorizz_Operazioni_Utenti.id_operazione) ON Utenti.id_utente=Autorizz_Operazioni_Utenti.id_utente) INNER JOIN Moduli ON Moduli.id_modulo=Operazioni.id_modulo_operazione) INNER JOIN Aree ON Aree.id_area=Moduli.id_area_modulo WHERE(Utenti.id_utente =3) ORDER BY aree.spazio_area, aree.nome_area, moduli.descrizione_modulo;"

L'ho eseguita prima su access e nn mi da problemi.

HO provato a modificare la query in :
SELECT *
FROM Aree, Moduli, Operazioni, Autorizz_Operazioni_Utenti, Utenti
WHERE ((Aree.id_area=Moduli.id_area_modulo) And (Moduli.id_modulo=Operazioni.id_modulo_operazione) And (Operazioni.id_operazione=Autorizz_Operazioni_Utenti.id_operazione) And (Autorizz_Operazioni_Utenti.id_utente=Utenti.id_utente) AND (Utenti.id_utente=3));

ma anche questa pur eseguendola su access mi da un errore, diverso stavota: Impossibile eseguire l'istruzione JOIN.

Spero che qlc possa aiutarmi, nn so più dove sbattere le corna....

Brainkiller Profilo | Guru

>Eseguendo una ExecuteReader() ed assegandola ad un oggetto Datareader,
>ottengo che se provo a stampare il risultato con Response.Write(oggettodatareader.GetString(0))

Ciao come ti ho spiegato nell'altro thread evidentemente la query non ritorna risultati.
Hai provato a vedere in Access se ci sono dei records ?

>ma anche questa pur eseguendola su access mi da un errore, diverso
> stavota: Impossibile eseguire l'istruzione JOIN.

Relativamente all'altra query, significa che è stata scritta male. Prova a costruire la query da Access utilizzando il Wizard che è molto semplice, una volta funzionante la copi e la incolli in .NET e dovrebbe funzionare tutto.
Potrai scriverle manualmente senza Wizard una volta che conoscerai abbastanza bene il linguaggio SQL.
ciao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5