如果oracle数据库的表中有date类型的字段,假设字段名为TIME,要插入的日期为now,now是string格式,值为“1900-01-01”,则用以下语句插入数据会失败:
string.Format("insert into tablename (TIME) values('{0}')",now)
正确的格式应该为:
string.Format("insert into tablename (TIME) values(TO_DATE('{0}','YYYY-MM-DD'))",now)
这样就没问题了。这里需要指出的是,C#中有datetime类型,但是这个类型是包括小时,分钟,秒的。这个格式与数据库中的Date类型不符,如果将now设为datetime类型插入数据会失败。
欢迎大家访问我的独立技术博客 道合|SameIdeal.com
本文介绍在Oracle数据库中正确插入Date类型字段的方法。当使用string格式的日期“1900-01-01”进行插入时,需采用TO_DATE函数转换格式。同时指出C#中的datetime类型与Oracle Date类型不完全匹配。

5054

被折叠的 条评论
为什么被折叠?



