238 messaggi dal 29 giugno 2003
Ho letto (e non lo sapevo) che si possono usare dei parametri in SQL per estrarre dei dati come nel codice sotto. Premesso che in ACCESS lo stesso SQL va in errore, mi chiedo come fare ad inserire nel parametro @TESTO la variabile e a usarla. Grazie.


dim SQLConn as string, strsql as string, variabile as string
'imposta connessione
SQLConn = ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.mappath("dati.mdb"))
dim myConn as OleDbConnection = new OleDbConnection(SQLConn)
'via con la query
strSQL="SELECT @TESTO=testo FROM tbpagine WHERE pagina=@PAGINA"
dim objcmd as oledbcommand= new oledbcommand (strsql,myconn)
'apro il datareader
dim objreader as oledbdatareader
dim objparam as oledbparameter,objparam2 as oledbparameter
'attacco il parametro
objparam=objcmd.parameters.add("@PAGINA",oledbtype.char)
objparam.direction=parameterdirection.input
objparam.value=replace(request.querystring("pagina"),"_"," ")
'imposto parametro lettura
objparam2=objcmd.parameters.add("@TESTO",oledbtype.char,255)
objparam2.direction=parameterdirection.output
'estraggo i dati
try
objcmd.connection.open()
objreader=objcmd.executereader
'qui leggo il valore
variabile = objparam2.value
datagrid1.datasource=objreader
datagrid1.databind()
objreader.close
objcmd.connection.close
catch ex as oledbexception
lblerrore.text="Errore in fase di lettura dati "
end try


Grazie
30 messaggi dal 22 agosto 2003
La query SQL che cerchi di utilizzare è piuttosto strana per quello che vuoi fare. Perché tenti di ottenere il risultato con un parametro di output?
Scrivi semplicemente:
SELECT testo FROM tbpagine WHERE pagina=@PAGINA
ed elimina il parametro di output.
Vedrai che funziona!
Ciao, PaoloG

PaoloG
MCSE - MCDBA - MCSD.NET
paolog@libero.it
642 messaggi dal 25 luglio 2003
myParam = myCommand.Parameters.Add (New SqlParameter( "@Type", SqlDbType.char, 1))
myParam.Direction = ParameterDirection.Output

Solo che in Acces non è SqlParameter
238 messaggi dal 29 giugno 2003
Grazie a tutti innanzitutto: a paolog volevo die che certamente ciò che mi suggerisci va bene e ne conoscevo l'esistenza, ma nel libro APOGEO di Payne si fa rierimento alla possibilità da me prospettata anche su db access. Per cui...
A bronzo volevo chiedere come fa poi a recuperare quel parametro. Grazie
30 messaggi dal 22 agosto 2003
Se era questo che volevi sapere, ecco la risposta:
objcmd.Parameters(?@TESTO?).Value.ToString()
Ciao, PaoloG

PaoloG
MCSE - MCDBA - MCSD.NET
paolog@libero.it

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.