magicolotto (Normal User)
Expert
Messaggi: 338
Iscritto: 21/01/2008
|
Ciao ragazzi
ho un archivio in access
sto cercando di aprire tramite una connessione un gruppo di recordset
nella tabella c è il campo data.
io per appunto dovrei aprire un gruppo di date , ch vadano da una certa data ad un'altra scelta.
apro la connessione e visualizzo il tutto in una SMHFLEXGRID, e visulizzo le ultime estrazioni in questo mo do :
Codice sorgente - presumibilmente VB.NET |
Dim sConnect As String Dim sSQL, data As String Dim dfwConn As ADODB.Connection Dim i As Integer ' imposta le stringhe sConnect = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;User ID=Admin;Data Source=" & App.path & "\archivio.mdb;;Jet OLEDB:Database Password=12345678910112;" sSQL = "select ID,Data,BA1,BA2,BA3,BA4,BA5 from archivio" data = Format(data, "dd/mm/yyyy") ' apre la connessione Set dfwConn = New Connection dfwConn.Open sConnect ' crea un gruppo di record utilizzando l'insieme specificato Set datPrimaryRS = New Recordset datPrimaryRS.CursorLocation = adUseClient datPrimaryRS.Open sSQL, dfwConn, adOpenForwardOnly, adLockReadOnly Set MSHFlexGrid1.DataSource = datPrimaryRS
|
dovrei far si di aprire un gruppo di date
come potrei fare??
|
|
theprogrammer (Normal User)
Guru^2
Messaggi: 2509
Iscritto: 28/01/2009
|
Non capisco cosa voglia dire "aprire un gruppo di date" ...
|
|
magicolotto (Normal User)
Expert
Messaggi: 338
Iscritto: 21/01/2008
|
Codice sorgente - presumibilmente Plain Text |
sto cercando di aprire tramite una connessione un gruppo di recordset
|
un gruppo di record da archivio
gruppo che vada da una data( campo data) ad altra data.
|
|
theprogrammer (Normal User)
Guru^2
Messaggi: 2509
Iscritto: 28/01/2009
|
Non e' che ti spieghi tanto chiaramente ... comunque, basta una SELECT con una WHERE opportuna, ad esempio
SELECT ... WHERE tuadata BETWEEN data1 AND data2
in cui tuadata e' il campo che contiene la data e data1 e data2 sono l'inizio e la fine dell'intervallo. Naturalmente, la sintassi varia un poco a seconda del db che usi.
|
|
magicolotto (Normal User)
Expert
Messaggi: 338
Iscritto: 21/01/2008
|
si, infatti facevo in questo modo.
Pero' non funzionava.
Dopo la tua conferma sono andato a rivedere il xchè
ho notato che il capompo data, nella struttura, è NUMERICO
quindi non funziona, se invece lo modifico in DATA/ORA
funziona
come posso far si che funziona lasciandolo come NUMERICO?
|
|
theprogrammer (Normal User)
Guru^2
Messaggi: 2509
Iscritto: 28/01/2009
|
Intanto non capisco come faccia ad essere numerico (come scrivi una data con un numero??).
In secondo luogo, mi dispiace, ma devi fare in modo che il campo sia di tipo Date/Time.
Un valore Data DEVE essere inserito in un campo Date/Time nel DB. Non ha senso fare diversamente.
Quindi, armati di pazienza, cambia il tipo di campo nel DB e opera di conseguenza nel programma.
|
|
()
Newbie
Messaggi:
Iscritto:
|
devi utilizzare il seguente codice:
Codice sorgente - presumibilmente Visual Basic 6 |
SELECT ... FROM Archivio WHERE Data BETWEEN #" + txtData.Text + "# AND #" + txtData2.Text + "#
|
Ultima modifica effettuata da il 26/02/2009 alle 19:32 |
|
theprogrammer (Normal User)
Guru^2
Messaggi: 2509
Iscritto: 28/01/2009
|
Postato originariamente da marco_grillo:
devi utilizzare il seguente codice:
Codice sorgente - presumibilmente Visual Basic 6 |
SELECT ... FROM Archivio WHERE Data BETWEEN #" + txtData.Text + "# AND #" + txtData2.Text + "#
|
|
Solo se il campo nel DB e' di tipo Date (e non numerico come lo ha lui). E inoltre, Access prevede che la data sia formattata comunque nel formato mm/dd/yyyy, quindi, txtData.Text e txtData2.Text devono essere adattate ... |
|
()
Newbie
Messaggi:
Iscritto:
|
il codice da me segnalato funziona al 100%, già testato..!
|
|