E' possibile usare nella sintassi SQL, ORDER BY, non un campo del DB ma un variabile passata da una textbox?
E' possibile usare nella sintassi SQL, ORDER BY, non un campo del DB ma un variabile passata da una textbox?
se la variabile passata corrisponde ad un campo del db sì; se no la domanda è priva di senso
Tutti vogliono parlare, nessuno sa ascoltare.
la variabile fa riferimento ad un campo del DB, ma il valore che assume dipende dalla textbox, ad esempio debbo ordinare una lista di nomi in modo che il nome scritto nella textbox del form sia il primo della lista nel recordset restituito da db.
In pratica se il DB ha i campi NOME COGNOME, dal form l'utente digita il suo cognome, se è presente nel DB, mi viene stampato l'intero DB con l'ordinamento che inizia dal cognome trovato, spero di essere stato più chiaro.
lo potresti fare facendo due query distinte ed accodando i risultati . oppure con un sort del recordset dopo la query. quale metodo è più efficiente dipende da quanti campi e quanti record tiri su.
Tutti vogliono parlare, nessuno sa ascoltare.
potresti darmi una traccia, il SORT non è il mio forte
posto un po di codice per capirci meglio
<%
Dim varCognome
varCognome=request.querystring("txtCognome")
Dim cn
Set cn = Server.CreateObject("ADODB.Connection")
cn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("firme2.mdb")
Dim sql
sql= "SELECT * FROM firme2 ORDER BY --QUI STA IL DILEMMA-- "
--avrei bisogno che il primo dato restituito fosse il cognome inserito nella variabile varCognome
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open SQL, cn, 3, 3
do while not rs.eof
%>
<font size="1" face="Verdana, Arial, Helvetica, sans-serif">
<%
=rs.fields("nome")%><%=rs.fields("cognome")%><font color="#CC0033">•</font></font>
<%
rs.movenext
loop
rs.close
cn.close
Set rs = nothing
Set cn = nothing
%>
non ho ben capito...
hai un db con
ALBINI
BIANCHI
ROSSI
VERDI
il cliente digita: ROSSI
l'ouput deve essere
ROSSI
ALBINI
BIANCHI
VERDI
???
esatto
la order by non ti puo' aiutare. va usata una UNION (prima solo il record selezionato, poi tutti gli altri - tranne ovviamente quello gia' selezionato).
Quindi una cosa tipo questa non ha senso
sql= "SELECT * FROM firme2 ORDER BY request.querystring("txtCognome")"