suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Wie kann ich eine Datumsfunktion in MySQLWorkBench angeben, um eine Fehlermeldung zu vermeiden?

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

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:

1

2

3

4

5

6

7

8

9

10

11

12

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粉245003607P粉245003607392 Tage vor624

Antworte allen(1)Ich werde antworten

  • P粉486743671

    P粉4867436712024-02-27 20:50:28

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

    1

    DATE_SUB(DATE('1987-07-13'), INTERVAL 85 DAY)

    Antwort
    0
  • StornierenAntwort