如何使用Oracle连接从asp.net C#Web表单将日期插入Oracle表
本文关键字:Oracle 表单 日期 插入 C#Web net 何使用 连接 asp | 更新日期: 2023-09-27 17:59:36
我有一个使用Toad创建的表。这有一个名为created的字段,它将存储创建日期,所以我需要使用C#和Oracle连接从代码后面插入创建日期。
但我无法插入日期。在执行此操作时,它抛出了异常ORA-01843:不是有效月份,并且当我尝试使用to_date
函数时,它显示在Microsoft Visual Studio的当前上下文中找不到to_date
。
我使用了以下代码:
DateTime dt = DateTime.Today;
.
.
.
cmd.CommandText = "insert into Employee (BADGE_ID, USER_ID, FNAME, LNAME,PLANNED_ALLOC, MANAGER, TEAM,CREATED,CREATED_BY,LAST_UPD,LAST_UPD_BY) values ( '" + bid + "', '" + uid + "', '" + fn + "', '" + ln + "', " + pa + ", '" + man + "', '" + team + "', '" + TO_DATE(dt.ToString(), "yyyy/mm/dd hh24:mi:ss") + "', '" + uid + "', '" + TO_DATE(dt.ToString(), 'yyyy/mm/dd hh24:mi:ss') + "', '" + uid + "')";
所以,在这种情况下,我会说让数据库来完成工作。在SQL语句中使用GETDATE()函数,服务器将格式化一个完整的时间戳并将其粘贴在其中。
"TO_DATE"位是PL/SQL的一部分(它是c#命令的一部分),因此它应该是"CommandText"字符串的一部分。
所以你想要这样的东西:
cmd.CommandText = "insert into Employee (BADGE_ID, USER_ID, FNAME, LNAME,PLANNED_ALLOC, MANAGER, TEAM,CREATED,CREATED_BY,LAST_UPD,LAST_UPD_BY) values ( '" + bid + "', '" + uid + "', '" + fn + "', '" + ln + "', " + pa + ", '" + man + "', '" + team + "', '" + TO_DATE(dt.ToString(), "yyyy/mm/dd hh24:mi:ss") + "', '" + uid + "', TO_DATE(dt.ToString(), 'yyyy/mm/dd hh24:mi:ss') + ', '" + uid + "')";
[注意,我已经删除了"(语音标记),它将TO_DATE从实际命令字符串中删除]。
所以,如果你明白我的意思,它必须在"交给"甲骨文的字符串中。
谨致问候,Mike