我在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:无效的月份
这是一个Oracle数据库。我不确定日期格式有什么问题。
目前尚不清楚您想要哪个,因此您可以尝试:
INSERT INTO Reserves VALUES(22, 101, TO_DATE('01-01-1998','MM-DD-YYYY'));
INSERT INTO Reserves VALUES(22, 101, TO_DATE('01-01-1998','DD-MM-YYYY'));
另外,建议阅读:Oracle函数:TO_DATE
请帮助我修复在尝试将内容插入下表时收到的错误消息。举个例子可以帮助我更好地理解它。 插入: 错误报告-SQL错误:ORA-01722:无效号码01722。00000-"无效号码"*原因:指定的号码无效。*操作:指定有效号码。
我希望在oracle数据库11.2.0.4版上的PL/SQL ETL进程中插入具有时间戳列的表中的数据 如果在Toad中运行“Create INSERT from seletcted row”,将得到以下SQL命令: 在PL/SQL中,我生成一个varchar2/string,类似于:
我使用以下查询创建了一个表 现在,当我尝试使用SQL错误:ORA-01843:not a valid month。 我做错了什么?
我有一个包含以下字段的表: 报告(表名)Rep_Date(日期)Rep_Time(日期) 更新15:58我现在可以执行以下查询: 但是,我需要在子句中再添加一条语句,将MaxDate的时间部分与rep_time:不起作用。
请帮忙。我在这里犯了一个小错误,但即使看了前面的问题,我也找不到它。 查询运行时没有错误,但是当我从结果中选择所有数据时(通过执行Ctrl+a),我得到ORA-1843:不是一个有效的月份。 谢谢你。 此外,我被错误的数据模型所困扰。此日期字段的值如“0--”,月份值大于12,最后天大于31。现在我想在选择期间忽略这些记录。我创建的存储过程不能正常工作,请提供帮助。谢了。