一个关于在delphi7里面的数据类型的问题!!!!

hayoung 2005-05-09 10:10:03
大家好:我用的数据库是oracle,开发环境是delphi7.
想通过程序向数据中加入一条记录,由于数据库的表中的时间是date型的,而程序中的时间是string型的,所以values的时间部分需要做一个todate转换,下面是程序执行时显示的sql语句,可是提示ora错误,说todate无效数据类型
insert into fzx_nrfd_zb(id,zx_id,rw_id,lhhh,pznr,dxyw,jcsl,fl,xz,tzdw,ysy,yssj,shy,scsj,shsj,zt)
values(4618,100,4511,'asdas','sada','sadasd',32,4,3,3,'无权限用户',to_date('2005-04-27 16:30:36','yyyy-mm-dd hh24:mi:ss'),'无权限用户',to_date('2005-04-27 16:30:36','yyyy-mm-dd hh24:mi:ss'),to_date('2005-04-27 16:30:36','yyyy-mm-dd hh24:mi:ss'),4)
还有就是delphi7中有与oracle中的date型相对应的时间类型吗?如果有的话,是不是改一下变量的类型就可以了?望高人明示!!!
想请教各位大侠如何解决次问题!!!
小弟在此先谢过了
...全文
100 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jkx01whg 2005-05-09
  • 打赏
  • 举报
回复
up
thiftcat 2005-05-09
  • 打赏
  • 举报
回复
关注
xtaotao 2005-05-09
  • 打赏
  • 举报
回复
在我的系统中一个调用的例子:
其中sDate和eDate都TDateTimePicker控件.

QueryCondition:= 'where fBuyInDate>='+ Date2Str(sDate.Date) + ' and fBuyInDate<='+ Date2Str(eDate.Date);
xtaotao 2005-05-09
  • 打赏
  • 举报
回复
我自己做的一个将DELPHI日期转换为ORACLE日期字符串的函数,在我的系统里使用过是OK的.

function Date2Str(aDate: TDate): string; //生成Oracle需要的日期字串
begin
result:= 'TO_DATE('''+DateToStr(aDate)+''',''YYYY-MM-DD'')';
end;
hayoung 2005-05-09
  • 打赏
  • 举报
回复
xtaotao(淘淘)
sorry 问题出在我这 是我自己程序的问题的原因 你的方法是正确的 没有问题

多谢!!!!!!!!!!!!
我的msn liunike@hotmail.com
希望有时间多交流~~~~
hayoung 2005-05-09
  • 打赏
  • 举报
回复
具体说明一下,我是在pl/sql底下运行的.运行结果在这个部分
'无权限用户','to_date('2005-04-30','YYYY-MM-DD')',
的数字'2'底下划一条红色横线 ,然后提示'ora_00917:missing comma'
这时候如果把to_date前面的的 ' 去掉的话,这个函数的定义部分就会报错.
麻烦再指点一下如何解决
多谢!!!!
hayoung 2005-05-09
  • 打赏
  • 举报
回复
xtaotao(淘淘
'TO_DATE('''+DateToStr(aDate)+''',''YYYY-MM-DD'')'
这句话的TO_DATE前后都有引号,这样运行的话会提示"ora00917 :missing comma"错误

请问怎没解决?

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧