Perché il tipo di anno MySQL limita la gamma di anni consentiti tra il 1901 e il 2155?Anno MySQL Tipo
risposta
Presumibilmente, se si memorizzano date più recenti, non saranno mai necessari più di 256 valori possibili anno, che si adatta esattamente in un byte. Ciò consente di risparmiare una quantità significativa di spazio: anziché utilizzare più byte per memorizzare l'intero 1901, 1900 anni di cui può essere considerato ridondante in molti casi, MySQL lo considera internamente solo come numero 1 e lo visualizza al 1901 a proprio vantaggio.
Se sono necessari più anni, utilizzare un tipo basato su INT.
Per inserire il valore in un singolo byte. La scelta del 1901-2155 è arbitraria, ma il fatto che supporti valori del valore di 1 byte non lo è.
Il tipo di anno è un tipo a un byte. Un byte = 256 valori. Probabilmente fatto in questo modo perché la maggior parte delle date sarà in tale intervallo in modo da risparmiare byte ...
È possibile utilizzare una stringa per le date precedenti.
- 1. Fine anno con Mysql
- 2. Modifica anno in data mysql
- 3. MYSQL - Modifica anno di date 2020-2011
- 4. mysql promemoria di compleanno, anno bisestile
- 5. Aggiornamento Data + un anno in mysql
- 6. Datepart (anno, ...) vs. Anno (...)
- 7. Crea data dai campi giorno, mese, anno in MySQL
- 8. Incremento automatico incluso anno e mese in MySql
- 9. PHP MySQL Blog Archive Menu per Anno e mese
- 10. Tasso di crescita trimestrale anno su anno
- 11. Convertire quattro valori anno cifre ad un tipo di data
- 12. Tipo di dati DECIMAL MySQL
- 13. R: plm - anno effetti fissi - dati anno e trimestre
- 14. Qual è la differenza tra anno e anno dell'era?
- 15. Timestamp Syslog senza anno?
- 16. DatePicker include Anno
- 17. Confronto DateTime senza anno
- 18. Data meno 1 anno?
- 19. Anno in Nullable DateTime
- 20. Django - Servono campi datetime in grado di gestire solo i valori anno, mese e anno
- 21. SQL DataType - Come conservare un anno?
- 22. indice mysql su colonna di tipo int
- 23. Mysql Stored Procedures Riferimento tipo colonna
- 24. MySQL: dimensione del tipo di dati decimale
- 25. query MySQL con subsort per tipo
- 26. MySQL cambia tipo di chiave esterna
- 27. Is "tipo" una parola riservata in mysql
- 28. Oracle Equivalent di tipo TEXT di MySQL
- 29. Devo usare il tipo di blob MySQL?
- 30. php e mysql ottengono i dati per anno e data! struttura del tavolo?
No grazie sull'utilizzo di stringhe. Se il tipo DATE ('1000-01-01' a '9999-12-31') non copre l'utente, quindi esegui l'aspirazione e utilizza 3 campi interi, altrimenti utilizzi tonnellate di spazio non necessario. È la differenza tra 4 byte e 10 byte. – Matchu
Mai e poi mai usare stringhe per memorizzare le date! Usa il tipo appropriato - a meno che non ci sia altro modo, usare i tipi appropriati ti dà tutti i benefici: nessun problema di formattazione delle stringhe, possibilità di estrarre parti, ordinamento corretto, calcolare le differenze tra le date e così via, e così via. –