首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

程序遇到有关问题了

2012-03-22 
程序遇到问题了我很奇怪,刚发了篇文字,提示404,你懂的,我蛋疼了,不懂...这里重发下,估计是涉及什么敏感字

程序遇到问题了
我很奇怪,刚发了篇文字,提示404,你懂的,我蛋疼了,不懂...
这里重发下,估计是涉及什么敏感字眼了,所以标题起得很模糊,大牛勿见怪。

我现在碰到个奇怪的问题,没有得到解决:当我的月份或者日份是个位数时就查不到结果,否则就可以查到。我存储及查询时的时间格式也都是一样的,所以不明所以了。程序示例如下:

C/C++ code
TDateTimePicker *dtpODate;TDateTimePicker *dtpIDate;AnsiString table_name, date_time;AnsiString buf1 = dtpODate->Time.DateString();AnsiString buf2 = dtpIDate->Time.DateString();char *sqlbuf = new char(512);//此处到底是该用字符串还是数组定义的好呢?呵呵我目前是选择数组了...sprintf(sqlbuf,"Select * from table_name.c_str() where date_time.c_str() between '%s' and '%s'",\    buf1.c_str(), buf2.c_str()); ///////Test:eg1: buf1 = "2011-8-19", buf2 = "2011-10-7". result1: No elements found. ------------------------------------------ eg2: buf1 = "2011-10-19", buf2 = "2011-10-12". result1: Can find the special data. 

在数据库版本问了下,有大牛说我应该对其进行各转换,回复如下:
'2011-08-19' and '2011-10-07'.
这样的格式才对 不是的话需要转换
convert(varchar(10),cast('2011-8-19' as datetime),120)
//我查了下帮助,好像CB里面调用这个函数需要什么VCL头文件,可惜还是没找到,望各位大牛给予提示,3Q。


[解决办法]
删了好像补不回分去,不如你自己结帖。
[解决办法]
泄特啊,那几个帖子打不开,要么是服务器忙,要么是404,CSDN又开始抽风了。
[解决办法]
你那个存储时间的字段是会什么类型的?
[解决办法]
TEXT换成varchar/char
[解决办法]
跟你的当前的系统设置有关。
探讨
我找了TDateTimePicker这个控件的属性,挨个试了下,怎么着也不能直接把日期2011-1-4显示为2011-01-04,只能自己重新读取字符串,然后手工设置,请问我如果直接更改控件属性的话,该怎么弄呢?谢谢了。。。

热点排行