[MySQL] problema query con date su server

visualrenzo

Nuovo Utente
1 Feb 2019
6
0
1
Buongiorno, ho scritto un programma in VB.net.


Vado su una tabella su server e leggo i dati ogni 15 secondi.

Creo un Datagrid aggiornato e vorrei filtrarlo per data di scrittura.

Ho il problema che non riesco a scrivere la giusta stringa SQL perchè mi da errore sulle date.


Premesso che per fare le prove in locale ho un tipo di connessione e per quando sono collegato al server ne ho un’ altra gestita così:


PHP:
  If IniLocale = True Then

            IniServer_Locale = My.Computer.FileSystem.CurrentDirectory


‘<!-- <Connessione DB Locale solo per prove "/> -->
   ‘ <add key="IniProvider_Locale" value= "Microsoft.ACE.OLEDB.12.0"/>

            'monto la stringa corretta con dato letto dall' ini
            ProviderVar = "Provider=" & IniProvider_Locale & ";"
            ServerVar = "Data Source=" & IniServer_Locale & ""
            DatabaseVar = IniDatabase_Locale & ";"

 
            dataFileVar = ServerVar & DatabaseVar

        Else
           
‘<add key="IniProvider_Missione" value= "Nome MIO SERVER"/>’
            'monto la stringa corretta con dato letto dall' ini
            ProviderVar = "Provider=" & IniProvider & ";"
            ServerVar = "Server=" & IniServer & ";"
            DatabaseVar = "Database=" & IniDatabase & ";"

            UidVar = "Uid=" & IniUid & ";"      
            PwdVar = "Pwd=" & IniPwd        

            dataFileVar = ServerVar & DatabaseVar & UidVar & PwdVar

        End If
connString = ProviderVar & dataFileVar




Premesso anche che i dati relativi alla data scrittura (campo che vorrei interrogare per la data) che devo leggere nella tabella vengono inseriti nel seguente modo a seconda se sia locale o server

PHP:
Dim Adesso As DateTime = Now

         If IniLocale = True Then
    cmdCommand.Parameters.Add(New OleDbParameter("@HHH", OleDbType.Date)).Value = Adesso '21 gennaio 2019
           Else
cmdCommand.Parameters.Add(New OleDbParameter("@HHH", OleDbType.DBTimeStamp)).Value = Adesso '21 gennaio 2019

      End If


Sul server è settato come campo data/ore e per non avere errore in scrittura (inversione mese con girno) devo scriverlo con questo formato OleDbType.DBTimeStamp rispetto al db locale access che basta un OleDbType.Date


Questo parte fondamentale del mio codice

PHP:
        Dim DataInizio As DateTime = Now
        Dim DataFine As DateTime = Date.Now.AddDays(-1)
         

 strSQL = "SELECT * FROM  " & Tbl_Missione & " WHERE [Data_Scrittura] BETWEEN #" & (DataInizio) & "# AND #" & (DataFine) & "# ORDER BY ID DESC" '
    Dim cmd As OleDbCommand = New OleDbCommand(strSQL, MyConnessione)
   Try
                RsCodice = cmd.ExecuteReader

                While RsCodice.Read '31 gennaio 2019

                    ID_Letto = Trim(RsCodice("ID ").ToString)
  End While

                ' '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            Catch ex As Exception
                FileClose(1)
                FileOpen(1, "LOG Errori" & ".txt", OpenMode.Append, , , )    'Open "ParametriTest.ini" For Input As 1
                PrintLine(1, ex.Message & " Non riesco a leggere la tabella  " & Tbl_Missione & " " & Now)
                FileClose(1)

            End Try

            RsCodice = Nothing ' scarico il record set ''


            MyConnessione.Close()

Per il DB locale funziona correttamente mentre sul server non mi funziona e mi va nell’ eccezione gestita con Catch.

Praticamente mi da errore come se arriva a leggere la data e poi trova il punto delle ore e mi butta fuori.

In locale mi funziona anche questa versione :

PHP:
strSQL_Missione = "SELECT * FROM  " & IniTbl_Missione & " WHERE [Missione_Data_Scrittura] <= # " & DataInizio.Date & "#  ORDER BY ID_Missione DESC" ' remmato il 29 gennaio 2019 vogliono anche lo stato 20

Adesso non ho qui a portata di mano l’ esatto errore ma ho provato in mille modi. Questo mostrato sopra è uno degli ultimi che mi sembra il più logico.
 
Ultima modifica di un moderatore:

marino51

Utente Attivo
28 Feb 2013
3.036
192
63
Lombardia
non ho mysql ma sql server e visto che non hai pubblicato l'errore, ti posto una query simile alla tua,

upload_2019-2-2_13-53-44.png


considera,

l'uso degli apici invece del cancelletto
usando il cancelletto mi segnala un errore nella posizione "00:"

il formato della data "yyyy-mm-dd",
passando la data in formato "dd/mm/yyyy" ricevo un errore di conversione da stringa a data
 

visualrenzo

Nuovo Utente
1 Feb 2019
6
0
1
Grazie

provo a mettere gli apici, ma io ho una variabile nonuna data fissa come messa da te.

PHP:
 Dim DataInizio As DateTime = Now
        Dim DataFine As DateTime = Date.Now.AddDays(-1)

e poi dovrei invertire il senso?
 
Ultima modifica di un moderatore:

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.397
338
83
@visualrenzo
Da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code-gif.6007
o il tag
php-png.6009
per il PHP, quando posti del codice, oppure la funzione codice dalla barra degli strumenti
box-inserisci-2-png-jpg.6008

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Per questa volta te lo sistemo io ma mi raccomando per il futuro
 

visualrenzo

Nuovo Utente
1 Feb 2019
6
0
1
ma io avevo incollato il codice dentro la finestrella?!?! come hai fatto vedere tu, starò più attento
 

marino51

Utente Attivo
28 Feb 2013
3.036
192
63
Lombardia
il formato di scrittura é identico,
BETWEEN '" & DataInizio & "' AND
ovvero apice-virgolette-congiunzione-variabile (magari senza parentesi) -congiunzione-virgolette-apice
per tutti i valori non numeri
 
Discussioni simili
Autore Titolo Forum Risposte Data
G Mysql ( Query) problema interrogazione MySQL 0
G problema query mysql in php PHP 5
G Problema con query mysql MySQL 1
B problema query mysql php PHP 1
L PHP: problema con query mysql. PHP 3
S Autocompletamente con jQuery, PHP e MySQL - Problema con le query PHP 7
Boscagoo Problema query mySQL MySQL 6
M Problema query MySQL MySQL 13
K [MYSQL] problema con una query in loop MySQL 1
A problema: estrazione dati da query mysql e assegnazione ad una variabile PHP 2
B Problema con query mySql Java 2
A problema con query mysql PHP 1
S problema con recupero dati tabella mysql PHP 2
Z Problema con INT MySQL PHP 1
Z Problema database MySQL con XAMPP PHP 0
D problema php mysql PHP 1
D problema php mysql PHP 1
S Problema esportazione tabelle Mysql in Excel PHP 0
G Problema caricamento tabelle MySql da PhP PHP 0
Z MySQL problema Database 0
K [RISOLTO] Problema Griglia Php+Mysql PHP 13
elpirata [RISOLTO][Mysql] Problema insert valori apostrofati MySQL 1
G inserimento csv in tabella mysql; problema con struttura PHP 11
S Problema ricevimento dati da con MySQL PHP 6
T PHP+MYSQL: problema con quelle maledette lettere accentate... PHP 5
batmanLF [MySQL] Problema funzione SUM MySQL 1
F Problema con mysql workbench MySQL 0
T Problema somma mysql MySQL 8
J [MySQL] Problema di sintassi? MySQL 1
M [MySql - VB6 sp6] Problema connessione db con alcuni pc (errore Lost connection to MySQL server...). MySQL 1
gandalf1959 problema con la codifica caratteri accentati e speciali tra php e mysql PHP 3
Q Problema su come far aggiornare i campi su un database Mysql PHP 17
webmachine [PHP][MYSQL] Problema con le SELECT PHP 5
F [MySQL] Problema con LEFT JOIN MySQL 6
simgia [MySQL] INNER JOIN problema MySQL 0
daniele430 [C++] Problema accenti - mysql - XML C/C++ 0
A [MySQL] problema con la command line client. MySQL 0
M Problema MySQL e sessioni MySQL 0
H problema input e echo più linee di una tabella mysql PHP 13
neo996sps PHP/MySQL - Problema con generazione array PHP 14
P Problema apostrofo su database MySQL... MySQL 0
M Problema connessione su OS X YOSEMITE 10.10 per il server locale mysql MySQL 0
M Problema connessione su OS X YOSEMITE 10.10 per il server locale mysql Mac e Software 0
Emix Problema recupero Dati da MYSQL PHP 20
S Problema con pagination e mysql PHP 0
N Problema php e mysql PHP 2
F Problema selezione dinamica select/jsp/mysql Javascript 0
I Problema con DELETE - MYSQL PHP 6
StarFish [MySQL] Full Text problema rilevanza risultati MySQL 0
M problema con form scrittura su mysql PHP 3

Discussioni simili