Visualizzazione dei risultati da 1 a 9 su 9

Discussione: errore con date

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    556

    errore con date

    sto realizzando un applicazione con vwd 2005 express e con sql server express 2005

    quando tento di aggiornare dei dati in cui sono presenti le date mi viene ritornato un errore:

    La versione di SQL Server in uso non supporta il tipo di dati "date".


    c'è un modo per risolvere il problema direttamente con sql server impostando il tipo di data corretto?
    Altrimenti come faccio?

    ciao

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Dovresti usare DateTime dappertutto, stando attento ai confronti, che potrebbero risultare sfasati a causa della parte 'Time'.

    Oppure come nell'esempio seguente, il tipo Varchar(10) per i parametri '@' della stored e string per le variabili C# che passi a questi ultimi, usando la CONVERT per uniformare tutto.

    esempio TSQL :
    codice:
      .................
      WHERE   
      (
      CONVERT(datetime, data_evento ,103) >= CONVERT(datetime, @data_dal, 103) 
      AND 
      CONVERT(datetime, data_evento ,103) <= CONVERT(datetime, @data_al, 103)
      )

    ma ci sono tante combinazioni possibili di tecniche, fra la pagina ed il db....

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    556
    non c'è un modo di settare il formato giusto nel DB?

  4. #4
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    non hai fornito abbastanza informazioni, ma il corrispondente logico di Date è Datetime

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    556
    nel db ho impostato come tipo dati datetime,

    nelle webform ho realizzato una gridview e inserito il controllo calendar per poter inserire le date, quando vado a verificare il funzionamento selezionando una data mi ritorna quel tipo di errore.

    :-(

  6. #6
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    ok, ma dove usi il tipo di dati "date" ?

    (riporta un po' di codice)

  7. #7

    Re: errore con date

    Originariamente inviato da gdota

    quando tento di aggiornare dei dati in cui sono presenti le date mi viene ritornato un errore:

    La versione di SQL Server in uso non supporta il tipo di dati "date".
    Evidentemente stai mandando una stringa sql che utilizza il tipo dati DATE che è stato inserito nel Transact SQL dalla versione 2008 in avanti. La sola introduzione di questo tipo dati giustifica il passaggio a SQL 2008, visto che è di una comodità totale ed evita un sacco di rogne nella gestione dei confronti di date, che con DATETIME erano una vera pena.

    Quindi: o modifichi il tuo codice SQL (sostituendo DATE con DATETIME, ovviamente con tutte le conseguenze del caso), o passi ad una versione di SQL server successiva (oltretutto, visto che usi Express, è gratis).

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    556
    grazie

    risolto sostituendo

    <asp:Parameter DbType="Date" Name="datainizio" />

    con

    <asp:Parameter DbType="Datetime" Name="datainizio" />

    GRAZIE MILLE!!!

  9. #9
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    Se avessi postato il codice fin dall'inizio avremmo risparmiato 6 risposte !


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.