5 messaggi dal 10 gennaio 2017
Ho comprato il libro in formato elettronico e mi trovo subito benissimo, molto professionale e adatto anche ad un ingegnere civile come me che programma per passione, vorrei trovare delle risposte a tanti miei quesiti, per esempio, il seguente:
Come faccio a trattare le date nel formato italiano? Ho un database dove io inserisco le date nel formato italiano gg/mm/aaaa, ma utilizzando una istruzione di confronto (< o > o between) nelle query sql le date sono trattate nel formato mm/gg/aaaa e quindi per esempio una data che io intendo 2 marzo 2016 sql la interpreta 3 febbraio.
grazie e saluti
Atonino Iriti
10 messaggi dal 09 gennaio 2017
Io uso una funzione che prende la data che gli passo (gg/mm/aaaa) e la cambia nel formato richiesto da sql.

esempio:

select * from Tabella where data between" & FormatoData(Data1) & " and " & FormatoData(data2) & ""

Inizio Funzione formatodata(data) as date

formatodata= month(data) & "/" & day(data) & "/" & year(data)

Fine funzione

Sintassi ballerina ;) ma è un esempio per far comprendere la logica.

Spero di essere stato utile.
11.886 messaggi dal 09 febbraio 2002
Contributi
Si può anche ricorrere ad un parametro del SqlCommand in modo da non dover convertire mai il DateTime in stringa. Ci pensa il provider stesso a formattare opportunamente la data.
cmd.CommandText = "SELECT * FROM Tabella WHERE Data > @data";
cmd.Parameters.AddWithValue("data", DateTime.Now.AddDays(-7));

Questo è un meccanismo che possiamo usare anche quando abbiamo a che fare con delle semplici stringhe o con dei numeri. Serve ad evitare il problema della Sql injection.

ciao,
Moreno

Enjoy learning and just keep making
5 messaggi dal 10 gennaio 2017
Si perfetto ho risolto brillantemente con entrambi i metodi, grazie!!!!

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.