【发布时间】:2012-10-11 17:46:57
【问题描述】:
我在sql中有一张表如下:
CREATE TABLE Reserves(
sid INTEGER,
bid INTEGER,
day DATE,
PRIMARY KEY (sid, bid, day),
FOREIGN KEY (sid) REFERENCES Sailors,
FOREIGN KEY (bid) REFERENCES Boats
);
我正在尝试插入:
INSERT INTO Reserves VALUES(22, 101, '01-01-1998');
但我收到错误:ORA-01843: not a valid month
这是一个 Oracle 数据库。我不确定我的日期格式有什么问题。
【问题讨论】:
-
作为一般规则,除非您明确声明日期格式,否则您应该始终使用文化非特定日期格式 (yyyyMMdd)。
02-01-2012可能是 2012 年 1 月 2 日或 2012 年 2 月 1 日,但20120102总是 2012 年 1 月 2 日