CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  PowerBuilder >  基础类

pb6.5中读取数据库中时间出错

楼主steve_shun(steve)2005-06-01 12:47:06 在 PowerBuilder / 基础类 提问

ryrq在数据库中存储的值是2001.01.12   14:30:35,但是在pb6.5的应用程序中显示时出现的是???3????(设计的本意是显示日期,如2001/01/12   ),显示错误后,程序也不报错.我把代码贴出来,请哪位好心的pb高手帮忙看看,非常感激!  
  string   zyh_fy,sfxm,wheresql_cyfy,newsql_cyfy,time  
  string   wheresql_cybr,newsql_cybr,bqh_1,sql_text,ks_1  
  long   br_row,fy_row,tj_row,i,lo  
  Double   je  
  Date   ryrq,cyrq  
  //ryrq和cyrq的数据格式相同  
   
  fun_brfy_init(dw_sfxm,dw_brfy)  
  zyh_fy   =   Trim(sle_zyh.Text)  
  time   =   Right(Trim(em_year.Text),2)  
  wheresql_cybr   =   "   WHERE   cybr"   +   time   +   ".zyh=~'"   +   zyh_fy   +   "~'"  
  newsql_cybr   =   "DataWindow.Table.Select=~""   +   oldsql_cybr   &  
                              +   wheresql_cybr   +   "~""  
  dw_cybr.Modify(newsql_cybr)  
  dw_cybr.Retrieve()  
  br_row   =   dw_cybr.GetRow()  
  If   br_row   <   1   Then  
    MessageBox("注意!","无此编号!")  
    sle_zyh.SetFocus()  
    Return  
  End   If  
  ks_1   =   dw_cybr.object.ks[br_row]  
  select   bqh   into   :bqh_1   from   bqtoks   where   ksbm   =   :ks_1;  
  bqh_1   =   right('00'+bqh_1,2)  
  sql_text   =   "SELECT   zyh,tjm,sfxm,sum(je)   FROM   cyfy_d"+bqh_1+&  
  "   where   zyh='"+zyh_fy+"'   GROUP   BY   zyh,tjm,sfxm"        
  lo   =   dw_cybrfy.setsqlselect(sql_text)  
  dw_cybrfy.Retrieve()  
  tj_row   =   dw_cybrfy.RowCount()  
  dw_brfy.ReSet()  
  fy_row   =   dw_brfy.InsertRow(0)  
  dw_brfy.SetRow(fy_row)  
  dw_brfy.SetItem(fy_row,'zyh',zyh_fy)  
  dw_brfy.SetItem(fy_row,'name',&  
      dw_cybr.GetItemString(br_row,'xm'))  
   
  ryrq   =   date(dw_cybr.GetItemDatetime(br_row,'ryrq'))  
  dw_brfy.SetItem(fy_row,'ryrq',ryrq)  
  cyrq   =   date(dw_cybr.GetItemDatetime(br_row,'cyrq'))  
  dw_brfy.SetItem(fy_row,'cyrq',cyrq)  
  dw_brfy.SetItem(fy_row,'yjk',&  
      dw_cybr.GetItemNumber(br_row,'jkhj'))  
  dw_brfy.SetItem(fy_row,'ye',&  
      dw_cybr.GetItemNumber(br_row,'syyf'))  
  If   IsNull(cyrq)   Then  
    dw_brfy.SetItem(fy_row,'zyts',&  
      (DaysAfter(ryrq,Today())))  
  Else  
    dw_brfy.SetItem(fy_row,'zyts',&  
      (DaysAfter(ryrq,cyrq)))  
  End   If  
  For   i=1   To   tj_row  
    sfxm   =   Trim(dw_cybrfy.GetItemString(i,'sfxm'))  
    je   =   dw_cybrfy.GetItemNumber(i,'je')  
    fun_brfy(dw_brfy,sfxm,je)  
  Next  
  cb_print.Enabled   =   True  
  cb_exit.SetFocus() 问题点数:40、回复次数:7Top

1 楼sywen(古道西风)回复于 2005-06-01 13:54:55 得分 20

你的是什麽數據庫,估計是客戶端與服務器端日期格式設置不一樣所緻!  
  我以前用oracle踫到過這個問題!Top

2 楼steve_shun(steve)回复于 2005-06-01 15:20:33 得分 0

用的是sql   server2000,该如何解决,大侠指点!Top

3 楼qltouming(缘木渔人-临渊羡鱼,不若退而结网)回复于 2005-06-01 15:27:18 得分 9

代码没错的话应该就是机器日期格式设置的问题了,和数据库也不一定有关系,可能就是机器操作系统中日期格式的事,金额格式等有时也会因设置而导致显示不一致问题Top

4 楼steve_shun(steve)回复于 2005-06-01 15:44:09 得分 0

以前客户端用的是win95、win98,或者是winnt4,可惜当时的日期时间格式具体是什么样子的记不得了Top

5 楼princelily(百合)回复于 2005-06-01 16:15:56 得分 7

服务器端和开发环境中的时间字段不一致造成的。Top

6 楼wjtben(懒鱼冲树)回复于 2005-06-01 17:30:39 得分 4

format格式看看  
  Top

7 楼steve_shun(steve)回复于 2005-06-18 10:03:20 得分 0

问题解决了,结帖Top

相关问题

  • delphi读取oracle数据库的大数据量的表出错?
  • 读取数据库的出错问题,急
  • DBF 数据库连接或读取时出错
  • 为什么数据库读取的文件编译出错?
  • 读取数据库内容,放入DataGrid中,提示出错!!
  • 用where查询条件读取数据库出错,不知何解
  • 数据库出错
  • 数据库出错
  • 数据库出错
  • 数据库读取

关键词

  • cybr
  • newsql
  • zyh
  • ryrq
  • wheresql
  • fy
  • dw
  • row
  • 显示
  • br

得分解答快速导航

  • 帖主:steve_shun
  • sywen
  • qltouming
  • princelily
  • wjtben

相关链接

  • PowerBuilder类图书
  • PowerBuilder类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo