Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    [SQL Server] standardizzare la date

    Salve a tutti, ho un problema con SQLServer e il campo DateTime. Il problema deriva dal fatto che il formato cambia se il server è in italiano e inglese. C'è un modo per inserire la data fregandosene della versione?
    Ora come ora devo scrivere:

    DateTime.Today.ToString("dd/MM/yyyy")
    se il server è in italiano e

    DateTime.Today.ToString("MM/dd/yyyy")
    se il server è in inglese

    ciao

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    204
    Se utilizzi le SP per l'inserimento, è sufficiente dare come valore il datetime è il framework pernserà il resto. Per esempio, per il primo febbrario:

    command.Parameters.Add("@data", DateTime.Parse("1/2/2000"))

    Ciao

  3. #3
    Originariamente inviato da Alchimista
    Se utilizzi le SP per l'inserimento, è sufficiente dare come valore il datetime è il framework pernserà il resto. Per esempio, per il primo febbrario:

    command.Parameters.Add("@data", DateTime.Parse("1/2/2000"))

    Ciao
    Grazie, ma quando ho un db con una 20ina di tabelle almeno non posso fare tutte SP per inserire i record.

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    204
    Puoi usare i parameters anche senza SP, ma avere SQL e non usare le SP mi sembra un delitto!

    Con le normali stringhe con comandi in sql non rimane altra scelta della conversione manuale come fai tuttora:

    DateTime.Today.ToString("dd/MM/yyyy")

    Ciao

  5. #5
    Originariamente inviato da Alchimista
    Puoi usare i parameters anche senza SP, ma avere SQL e non usare le SP mi sembra un delitto!

    Ciao
    Vero, ma non sempre il gioco vale la candela. Fare una SP per ogni tabella del db a volte non conviene/si ha tempo.

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    204
    Se utilizzi le Sql Server, l'utilizzo delle SP mi sembra normale visto l'enorme vantaggio che hai per le prestazioni...

    Ma anche con normali stringhe contenenti istruzioni SQL puoi utilizzare i parameter dichirandone il tipo come ho detto sopra...

    Ciao

  7. #7
    Originariamente inviato da Alchimista
    Ma anche con normali stringhe contenenti istruzioni SQL puoi utilizzare i parameter dichirandone il tipo come ho detto sopra...

    Ciao
    Non ho capito come utilizzare i parameter anche in una istruzione SQL di insert.

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    204
    Ecco un esempio:

    strSQL = "select * from tabella where data= @data"
    OleDbCommand objCommand = new OleDbCommand(strSQL, oleDbConnection1);
    objCommand.Parameters.Add("@data",
    OleDbType.Date,0,"dataAggiornamento").Value= DateTime.Now;
    ...

    Ciao

  9. #9
    Originariamente inviato da Alchimista
    Ecco un esempio:

    strSQL = "select * from tabella where data= @data"
    OleDbCommand objCommand = new OleDbCommand(strSQL, oleDbConnection1);
    objCommand.Parameters.Add("@data",
    OleDbType.Date,0,"dataAggiornamento").Value= DateTime.Now;
    ...

    Ciao
    Riprendo questo post perchè non riesco ad utilizzare questo codice.
    Come eseguo poi questa query?
    Ho provato ma nella query SQL mi rimane il campo "@data", e non il suo valore.

  10. #10
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Scusami se non rispondo direttamente alla tua domanda, ma, fermo restando che l'uso dei parametri nelle query è fortemente consigliato, per inserire le date in sql, non conviene utilizzare una data standart del tipo DateTime.Today.ToString("MM\/dd\/yyyy") ?
    Pietro

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.