Ragazzi,
lavoro il mio problema è questo:
nel mio prg devo fare una ricerca i cui dati vengono estrapolati da una tabella temporanea creata ad hoc. il problema mi si pone nel momento dell'apertura del recordset che mi fa la select su quella tabella; mi si genera infatti il seguente errore:
"Errore di runtime -2147217900(80040e14)
[Microsoft][ODBC SQL Server Driver][SQL Server] Il nome di colonna '%a%' non è valido"
ora, ciò che lui riconosce come nome di colonna è in realtà la condizione del Like, che è a sua volta una parte della condizione per cui vado a fare la select.
qui di seguito vi posto il codice, sperando che sia leggibile.
la stringa '%a%' la ottengo solo se nel form ho inserito il titolo.
codice:Sub EseguiRicerca() Dim MioFiltro As String ' ricerca per titolo If Not IsNull(Trim(txtTitolo)) And Trim(txtTitolo) <> "" Then MioFiltro = "Descrizione Like ""%" & Trim(txtTitolo) & "%""" End If ' ricerca per autore If Not IsNull(dcAutore) And dcAutore <> "" Then If MioFiltro <> "" Then MioFiltro = MioFiltro & " AND " MioFiltro = MioFiltro & "Dettaglio1 = """ & dcAutore & """" End If ' ricerca per casa editrice If Not IsNull(dcEditore) And dcEditore <> "" Then If MioFiltro <> "" Then MioFiltro = MioFiltro & " AND " MioFiltro = MioFiltro & "Dettaglio2 = """ & dcEditore & """" End If Call MostraDettagli(1, MioFiltro) End Sub Sub MostraDettagli(Tipo As Integer, Optional MioFiltro As String) Dim miaSQL As String, MioRS As ADODB.Recordset Set MioRS = New ADODB.Recordset miaSQL = "SELECT * from #tbRicercaGlobale WHERE Tipo = " & Tipo If MioFiltro <> "" Then miaSQL = miaSQL & " AND " & MioFiltro miaSQL = miaSQL & " ORDER BY Descrizione" MioRS.Open miaSQL, miaConn, 1, 3 If MioRS.EOF Then Exit Sub End Sub
spero che sia tutto chiaro...
grazie a tutti... come sempre...![]()



Rispondi quotando