sql >> Database >  >> RDS >> Mysql

Niet-Gregoriaanse datums opslaan in het datumtype van Mysql

Nee. Afgezien van het feit dat een geldige datum in het ene kalendersysteem niet bestaat in een andere kalender, werken functies op DATE getypte kolommen werken mogelijk niet goed. Het gaat niet alleen om het opslaan van gegevens, u moet deze gegevens ook verwerken en bijvoorbeeld vergelijken met CURDATE() .

Als u de juiste opmaak kiest, gebruik dan twee cijfers voor maand en dag en statisch aantal cijfers voor jaar, een tekenreekstype, CHAR of VARCHAR is goed. Thema's met elkaar vergelijken is slechts een lexicale vergelijking en u kunt nog steeds uw functies of procedures schrijven om de functionaliteit uit te breiden.

Kiezen voor TIMESTAMP of DATE verandert de vraag omdat de eerste een specifieke tijd vertegenwoordigt, maar de laatste een specifiek item in de kalender vertegenwoordigt. Als je tijd naast datum wilt zetten, verschillen ze nog steeds in betekenis. U moet nadenken over zaken als veranderingen in de zomertijd, waardoor sommige mensen de voorkeur geven aan agenda-items (DATE) en sommigen liever seconden die verstreken zijn vanaf 1 januari 1970 (TIMESTAMP). bijv. er zijn twee tijdstempels voor 1393-06-30 23:30:00 in de Hijri Shamsi-kalender gebaseerd op de huidige Iraanse regeringswetten.



  1. Hoe haal ik alle rijen in mijn DB op?

  2. Kan ik dit oplossen met pure mysql? (aansluiten op '' gescheiden waarden in een kolom)

  3. mysql:alle open verbindingen naar een bepaalde database zien?

  4. Een databasemodel voor een online enquête. Deel 4