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

    mysql - data con anno superiore a 2035

    Salve ragazzi. Ho un database mysql in locale installato con xampp, quindi server apache e tutto, per gestire l'archivio di un'agenzia di assicurazioni. Il problema si presenta quando inserisco un anno superiore a 2035, tipo 01/12/2040 mi da la solita data errata del 1970.
    Se provo a inserire 01/12/2034 invece funziona alla perfezione. C'è qualche problema in phpmyadmin? Come posso inserire le date come mi pare a me? Grazie a presto!!!!

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Sicuro che il limite sia il 2035 e non il 2038?
    Se il campo della data è stato definito come "timestamp" i range di date utilizzabili è
    da '1970-01-01 00:00:01' UTC
    a '2038-01-19 03:14:07' UTC

  3. #3
    è di tipo date... non so se è questo che intendi, per quanto riguarda la data hai ragione, a 2038 cambia non 2035, si può risolvere?

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Non direttamente, il tipo "timestamp" supporta fino al 2038, non va oltre.

    Potresti fare così:
    backup della tabella correntemente in uso
    creazione di una nuova tabella uguale, ma con campo data definito come "datetime"
    riversamento dei dati della vecchia tabella nella nuova e da qui in avanti usare la nuova

    Il tutto con i dovuti accorgimenti per mantenere l'integrità dei dati attualmente salvati.

  5. #5
    nel momento in cui esporto il database nel file che esporto c'è già un create table, potrei sostituire tutti i date con datetime giusto? così nell'importazione dovrei aver risolto

  6. #6
    no come ho detto io non va perchè mi mette la data più gli zeri:

    es.: 2012-04-21 00:00:00

    e mi da sempre 1970

  7. #7
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Strano, che versione di XAMPP hai installato?
    Comunque mi sa che ti conviene scrivere o farti spostare nella sezione "Database" lì ne sanno di più.

  8. #8
    Originariamente inviato da jonathanphp
    no come ho detto io non va perchè mi mette la data più gli zeri:

    es.: 2012-04-21 00:00:00

    e mi da sempre 1970
    Probabilmente stai usando una versione molto vecchia e/o buggata di mysql, generalmente uso i campi date quando mi serve avere date anteriori al 1970 o successive al 2038 ... tra l'altro quando devo impostare una data che mi indichi "l'infinito ed oltre" metto solitamente 9999-12-31 e va tranquillamente

    Comunque, sposto in Database
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  9. #9
    Originariamente inviato da jonathanphp
    no come ho detto io non va perchè mi mette la data più gli zeri:

    es.: 2012-04-21 00:00:00

    e mi da sempre 1970
    Qualcosa non e' corretto.

    tu indichi di avere un campo DATE e poi dici che trovi 1970. In un campo DATE poi non trova posto hh:mm:ss inoltre un valore non ammesso renderebbe 0000-00-00 e non 1970.

    Quindi tu nello script hai qualche cosa che interpreta la data scritta nel database forse tramite il php che considera le date valide quelle dello unix timestamp

    Ancora: la data nel database deve essere inserita come anno-mese-giorno e non giorno-mese-anno

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  10. #10
    Cercherò di essere più chiaro... l'output è 01/01/1970 invece di 01/12/2040 ed ho parlato di 00:00:00 perché ho provato a risolvere cambiando il tipo da date a datetime. 00:00:00 è comparso nel momento in cui ho cambiato il tipo. In questo caso vorrei capire semplicemente come è possibile che un output è corretto soltanto fino all'anno 2038. Qual'è la logica? Devo trovare una soluzione è una cosa importante.

    daniele_dll dici che dovrei aggiornare mysql? Però è strano... Versione MySQL: 5.5.8
    Non mi sembra vecchissima

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 © 2026 vBulletin Solutions, Inc. All rights reserved.