19 messaggi dal 06 settembre 2002
Ciao a tutti,
sono una novellina e sto facendo un sitino in flash con interrogazioni al database (per quello nel codice che segue ci sono degli strani response! )
I miei problemi sono 2:
1 questo collegamento é veramente lentissimo come posso accelerare la connessione
2 come vedte dal codice io cerco di selezionare solo i records che anno il capo anno1 e anno2 rispettivamente >= e <= della variabile che gli mando. ma quello che ho scritto non funziona!!

qualcuno puó aiutarmi!??
grazie

<%@ Language=VBScript %>
<%Option Explicit%><%
Dim Conn
Dim SQL
Dim ris, datamin, datamax
Dim primo, numrec, file,datainput,datainput2,fondo,comm,tipo1
Dim anno1,anno2, linkfile1,linkfile1a,linkfile1b,linkfile1c, linkfile2
Const adOpenKeyset = 1
set Conn = Server.CreateObject("ADODB.Connection")
set ris = Server.CreateObject("ADODB.Recordset")
SQL = 0

datainput = request.querystring("anno")

Conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath ("memoria.mdb")
'questo é quello che compare nel database access al capo che mi serve
'SELECT [interventi].[Tipo], * FROM interventi ORDER BY [interventi].[Tipo];
SQL = "select * FROM fondi WHERE anno1>= "& datainput &" and anno2 <= "& datainput

SQL = SQL & " ORDER BY committente"

ris.Open SQL, Conn
primo = 0

numrec = 0
Do While not ris.EOF

if numrec=0 then
fondo = "fondo" & numrec & "="
else
fondo = "&fondo" & numrec & "="
end if

comm = "&committente" & numrec & "="

tipo1 = "&tipologia1" & numrec & "="

numrec = numrec+1

Response.Write(fondo & ris.Fields("fondo").Value)

Response.Write(comm & ris.Fields("committente").Value)
Response.Write(tipo1 & ris.Fields("Tipo1").Value)
'end if
ris.MoveNext
Loop
Response.Write("&nrec=" & numrec)
Response.Write("&fine=1")

ris.Close
Conn.Close
set Conn = Nothing
set ris = Nothing
'set categinput = Nothing
response.end
%>
2.584 messaggi dal 14 maggio 2001
Scusami cosa c'è scritto sul Db nel campo anno1?
19 messaggi dal 06 settembre 2002
il campo anno1 e anno2 sono numero integer
4 messaggi dal 29 marzo 2002
per la connessione prova a vedere se cambiando il provider è + veloce,se hai access98 puoi provare cosi:
Conn.Open("Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\. <i> path\nemdatabase</i>..mdb")

19 messaggi dal 06 settembre 2002
ho provato la connessione che dici tu ma quando andavo a mettere il nome file essendo su un server unix di cui non ho percorso mi dava errore: non trovava il file, che path dovrei mettere, ho provato senza visto che il file mdb é nella root del sito ma niente, e poi ora che ci penso il file .mdb l'ho creato a casa con win2000/access2000!!
256 messaggi dal 05 dicembre 2001
prova a fare cosi:

SQL = "select * FROM fondi WHERE anno1&gt;= "& Cint(datainput) &" and anno2 &lt;= "& Cint(datainput)

Ciao

Ainscia

Ainscia
19 messaggi dal 06 settembre 2002
niente da fare, ho messo la stringa esatta che hai scritto ma nulla di nulla , vengono fuori solo i record che hanno anno1 e anno2 uguali a inputanno, non quelli compresi o magari incui anno1 é diverso da anno2 ma uno dei due é uguale ad inputanno,
in sostanza solo quando non uguali tutte e tre!!
2.584 messaggi dal 14 maggio 2001
Scusami ma con una select di questo tipo
SQL = "select * FROM fondi WHERE anno1&gt;= "& datainput &" and anno2 &lt;= "& datainput

Richiedi che CONTEMPORANEAMENTE anno1 deve essere maggiore o uguale a datainput e che anno2 sia minore o uguale a datainput....
A te cosa serve esattamente?

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.