Rieccomi...
1) Dopo aver inserito come da tuo suggerimento l’istruzione
response.write("I record sono "&DataCommand1.RecordCount):response.end
la ricerca(script) si blocca(response.end) e viene visualizzato quanto segue:
I record sono -1
Cosa significa ?
2) Ho quindi eliminato l'istruzione di cui sopra ed inserito l’altro pacchetto di istruzioni
<select name="DATA_ESPOSIZIONE" size="1">
<%DataCommand1.MoveFirst
do until DataCommand1.eof%>
<option value="<%=DataCommand1("DATA_M")%>">
<font color="#000000"><%=DataCommand1("DATA_M")%></font>
</option>
<%DataCommand1.MoveNext
loop%>
</select>
che come detto nel precedente mio messaggio fà vedere la lista delle date che dovró far apparire in due formati differenti a seconda della pagina WEB interrogata, se a mezzo di alcuni miei files asp in lingua italiana/tedesca/europea o in lingua americana/australiana
Dovrei quindi sostituire alcune istruzioni con il comando o altro :
formatDateTime(DATA_M, vbShortDate)
ma mi sembra che DATA_M sia un composto di piú valori e non un puro campo data
SELECT DATA1 + ' ' + Dscrizione AS DATA_M FROM
, ecco perchè forse quando ho cercato di dare l'istruzione
formatDateTime(DATA_M, vbShortDate)
non mi funzionava o sbaglio ?
3) Non si vede ancora la descrizione della nazione accanto alla data come da query dove anche qui ho scelto di disporre con DESC l’ordine delle date uguali disponendole per sigla di nazione e cioè nel caso ci fosse una data uguale con sigla I/Italia oppure D/Germania la disposizione a video avverrebbe elencando prima la data della Germania poi quella dell'Italia rispettando in questo caso l’ordine alfabetico.
cmdTemp.CommandText = "SELECT DATA1 + ' ' + Dscrizione AS DATA_M FROM hunde3 INNER JOIN nazioni ON hunde3.NAZIONE = nazioni.Sigla_Nazione GROUP BY DATA1, nazioni.Dscrizione ORDER BY DATA1 DESC, nazioni.Dscrizione DESC"
4) per effetto della prima modifica al tipo di record da datetime a date adesso in fase di ricerca alla pagina successiva c’è questo errore :
Microsoft OLE DB Provider for ODBC Drivers error '80040e09'
[TCX][MyODBC]You have an error in your SQL syntax near '(datetime, '20040926', 105) ORDER BY hunde3.QUA1 DESC' at line 1
dovuto al richiamo delle seguenti istruzioni dove la stringa incriminata l’ho qui sotto evidenziata in grassetto ed in rosso nello script
<%
Tutte le istruzioni di collegamento al server poi la query ed il resto
cmdTemp.CommandText = "SELECT hunde3.NUM, hunde3.DATA1, hunde3.LUO1, hunde3.CLASSE, hunde3.QUA1, hunde3.VEDZBBEL, hunde3.GIU1, hunde0.Pedigree AS NUM, hunde0.Brevet, hunde0.Sesso, hunde0.Name, Nazioni_Cani.descrizione FROM ((hunde3 LEFT OUTER JOIN hunde0 ON hunde3.NUM = hunde0.Pedigree ) INNER JOIN Nazioni_Cani ON hunde3.NAZIONE = Nazioni_Cani.NAZIONE)"
WhereFlag=False
If Sesso <> "" Then
cmdTemp.CommandText = cmdTemp.CommandText & " WHERE hunde0.Sesso = '" & Sesso & "'"
WhereFlag=True
End If
If Classe <> "" Then
If WhereFlag Then
cmdTemp.CommandText = cmdTemp.CommandText & " AND hunde3.CLASSE = '" & Classe & "'"
Else
cmdTemp.CommandText = cmdTemp.CommandText & " WHERE hunde3.CLASSE = '" & Classe & "'"
WhereFlag=True
End If
End If
If Data <> "" Then
If WhereFlag Then
cmdTemp.CommandText = cmdTemp.CommandText & " AND hunde3.DATA1 = Convert(datetime, '" & Data & "', 105)"
Else
cmdTemp.CommandText = cmdTemp.CommandText & " WHERE hunde3.DATA1 = Convert(datetime, '" & Data & "', 105)"
"
WhereFlag=True
End If
End If
If Not WhereFlag Then
Response.Redirect "democampbelfreeplus.asp"
End If
cmdTemp.CommandText = cmdTemp.CommandText & " ORDER BY hunde3.QUA1 DESC"
cmdTemp.CommandType = 1
Set cmdTemp.ActiveConnection = DcLol
DataCommand1.Open cmdTemp, , 0, 1
If DataCommand1.eof Then
Response.Redirect "NoDatademofreeplus.asp?ID=" & Server.URLEncode(Num) & "&Data=" & Server.URLEncode(data) & "&Sesso=" & Sesso & "&Classe=" & DogClass
End If
If DataCommand1.RecordCount > From Then
DataCommand1.Move Clng(From)
End If
%>
Ho provato a modificare Convert(datetime, '" & Data & "', 105) in Convert(date, '" & Data & "', 105)
ma l’errore non cambia e dice :
Microsoft OLE DB Provider for ODBC Drivers error '80040e09'
[TCX][MyODBC]You have an error in your SQL syntax near '(date, '20040926', 105) ORDER BY hunde3.QUA1 DESC' at line 1
Risolto quest’ultima problematica tutte le altre procedure delle ASP dovrebbero funzionare o quanto meno dovrei riuscire a farle funzionare tutte ed il passaggio da SQL a MySQL dovrebbe in teoria portarmi dei vantaggi sull’uso di tutto lo spazio disco non piú limitato da SQL, ma utilizzato in toto dal database di MySQL, che ha anche il vantaggio di diminuire lo spazio usato perché elimina tutti gli spazi vuoti in tutti i records delle tabelle nei relativi campi.
Mi auguro che questo sia l’ultimo aiuto che chiedo e che le mie difficoltà siano di buona lettura per altri che potrebbero aver avuto le mie medesime problematiche.