在后台写SQL语句写入期格式出错的问题

在后台写SQL语句写入期格式出错的问题_第1张图片
报错.png

这一步是向数据库中写入数据,其中有一列CYDATE是日期格式的数据,刚开始直接传入了 DateTime.Now.Date.ToString()一直没有发现,后来把SQL语句拿到PL/SQL中测试才知道,是日期传递的格式不对。

后来在网上搜到,要传递日期格式要用to_date方法,如:

insert into CUSLOGS(STARTTIME) values(to_date('2009-5-21 18:55:49','yyyy/mm/dd HH24:MI:SS'));

因为这是从后台获取时间再写入数据库,所以要用这种方法转换为日期格式。

后来先将日期获取存放到DateTime变量中,然后对其赋值为当前的系统日期。

整理了新的SQL语句,其中要注意,要把TO_DATE关键字存放到变量中,不然在SQL语句的书写中要用引号这样传到数据库中的语句就无法使用了,下面贴上改完后的SQL语句,和相应的变量赋值。

 DateTime datetime1 = DateTime.Parse(DateTime.Now.Date.ToString());//新建DateTime变量存储获取的当前日期
 string TO_DATE = "TO_DATE";//新建string变量存储关键字
 string sql3 = "Insert into CYRESULTS  (CYOID,CYEOID,CYDATE,CYENAME) VALUES ('" + (i+1).ToString() + "','" + (cyno+sum).ToString() + "'," + "('"+ datetime1 + "','yyyy-mm-dd,hh24:mi:ss'),'" + dt1.Rows[i][1].ToString() + "')";//整理和书写新的SQL语句

可以看到sql3已经被赋值为一下语句


在后台写SQL语句写入期格式出错的问题_第2张图片
sql3

断点顺利通过


在后台写SQL语句写入期格式出错的问题_第3张图片
通过.png

数据库中也成功添加


数据库中添加成功.png

你可能感兴趣的:(在后台写SQL语句写入期格式出错的问题)