2016-08-22 1 views
2
CREATE TABLE datetime_datatype1 (
    datedata DATE, 
    timedata TIME, 
    datetimedata DATETIME, 
    timestampdata TIMESTAMP, 
    yeardata YEAR 
); 

INSERT INTO datetime_datatype1 
VALUES 
    (
     '0010-8-22', 
     '22:00:00', 
     '10-11-28 22:02:00', 
     '1970-12-30 11:00:40', 
     '2155' 
    ); 

datato Spalte akzeptiert Datumswert '0010-8-22' ohne Fehler.MySQL akzeptiert falsche Daten für Datumstyp

Actual MySQL Datumsbereich ist 1000-01-01 to 9999-12-31

Antwort

-1

Docs sagen: "Der unterstützte Bereich für Datum ist '1000.01.01' to ..."
aber Istwert: 0001-01-01

Dies ist Bug in MySQL beziehen Sie den folgenden Link.

http://bugs.mysql.com/bug.php?id=2106

+0

Dies ist kein Fehler. Lesen Sie den Link, den Sie gepostet haben, sorgfältig durch, siehe meine Antwort. – Numbers

1

Vom same link von Shiv_k geschrieben (und fälschlicherweise als Fehler in den answer markiert):

(...) ist dies kein Fehler.

(...)

Das Handbuch ist richtig geschrieben.

Es heißt, "Der * unterstützte * Bereich ist ...". Während Sie * Daten früher als die unterstützte untere Grenze verwenden können, gibt es keine Garantie.