如果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