SQL Oracle日期问题:ORA-01722:无效的数字

时间:2017-01-08 00:08:32

标签: sql oracle

想要将日期格式设为DD / MM / YYYY

我用过:

ALTER SESSION SET NLS_DATE_FORMAT = 'MM/DD/YYYY';

现在当我写下这一行:

INSERT INTO staff Values ('ST01', 'Mrs', 'Katie', 'Elswood', '06/10/1990');

我收到错误:

  

第1行的错误:ORA-01722:无效的数字

任何想法都错了吗?感谢。

或者我收到的错误消息不是有效的月份?

STAFF_ID                                  NOT NULL VARCHAR2(6)
TITLE                                              VARCHAR2(20)
FIRST_NAME                                         VARCHAR2(20)
SURNAME                                            VARCHAR2(20)
DOB                                                DATE
ADDRESS                                            VARCHAR2(50)
HOME_NO                                            VARCHAR2(20)
MOBILE                                             VARCHAR2(20)
EMAIL                                              VARCHAR2(30)
NI                                                 VARCHAR2(9)
SALARY                                             NUMBER(13,4)
EMPLOMENT_DATE                                     DATE
BRANCH_ID                                          VARCHAR2(3)
POSTCODE                                           VARCHAR2(8)
POSITION                                           VARCHAR2(30)
TOWN                                               VARCHAR2(30)

1 个答案:

答案 0 :(得分:2)

这绝不是日期问题。插入时如果你没有插入所有的值,那么oracle会抛出一条错误信息。因此,请详细说明您要为其插入值的列名。

Insert into staff(staff_id,title,first_name,surname,dob) values ('ST01','Mrs','Katie','Elswood','06/10/1990');