Wie kann ich eine Datumsfunktion in MySQLWorkBench angeben, um eine Fehlermeldung zu vermeiden?
P粉245003607
P粉245003607 2024-02-26 21:56:48
0
1
532

Ich habe versucht, eine Tabelle zu erstellen und habe sie so eingerichtet:

CREATE TABLE emp_tab
(  
  empno             NUMeric(10),  
  name              VARCHAR(50) NOT NULL,  
  job               VARCHAR(50),  
  manager           NUMeric(10),  
  hiredate          DATE,  
  salary            NUMeric(10,2),  
  commission        NUMeric(10,2),  
  deptno            NUMeric(5),  
  CONSTRAINT pk_emp_tab PRIMARY KEY (empno),  
  CONSTRAINT fk_emp_tab_deptno FOREIGN KEY (deptno) 
  REFERENCES dept_tab(deptno)  
);

So füge ich die Werte ein:

INSERT INTO emp_tab
 VALUES(7004, 'SCOTT', 'ANALYST', 7002,  
 date('87-7-13') - 85,  
 3000, null, 70
);


INSERT INTO emp_tab 
VALUES(7007, 'ADAMS', 'CLERK', 7003,  
 date('87-7-13') - 51,  
 1100, null, 40  
);

Das Seltsame ist, dass ich für den ersten eingefügten Wert keine Fehlermeldung erhalte, aber für den zweiten eingefügten Wert eine Fehlermeldung mit der Aufschrift „Falscher Datumswert: Spalte „Einstellungsdatum“ in Zeile 1 ist „19870662“. "), aber dann habe ich die -51 entfernt und es hat funktioniert. Allerdings wurde mir das falsche Datum angezeigt, sodass ich mich gefragt habe, ob es eine Chance gibt, die -51 ohne den Fehler beizubehalten?

P粉245003607
P粉245003607

Antworte allen(1)
P粉486743671

您应该使用格式正确的日期和 DATE_SUB()

DATE_SUB(DATE('1987-07-13'), INTERVAL 85 DAY)
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage