时间格式转换问题

csdnone 2004-07-16 02:40:01
我要用cdate()函数把字符串“2004-07-16 00:00:00”转换成时间格式
但是转换的结果只剩下2004-07-16,把时间00:00:00给去掉了
怎么解决呀?

谢谢各位了

...全文
269 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
lsftest 2004-07-18
  • 打赏
  • 举报
回复
留言收到,其实要验证我上面说的很简单,你在sql server Enterprise Manager中打开数据库、表(例如叫temp1),在你说的datetime字段中输入2004-1-1

然后到sql server query anlyzer中select * from temp1
你会看到刚才输入的2004-1-1变成了:
2004-01-01 00:00:00.000

我用的是sql server7.0
northwolves 2004-07-17
  • 打赏
  • 举报
回复
datevalue()
timevalue()
lsftest 2004-07-17
  • 打赏
  • 举报
回复
是这样的,我需要时时记录时间,而且这个时间要入数据库,格式是 2004-07-16 12:00:00。

时间部分 00:00:00 不能丢掉呀,否则就会数据不全了
======================================
是什么数据库?如果是sqlserver的datetime字段,正常情况下如果你只保存2004-07-16,它会自己为你添加 00:00:00 。。。。。。。。
BlueBeer 2004-07-17
  • 打赏
  • 举报
回复
这个无所谓的,是一回事,只是个显示格式的事
你只管保存就行了,显示的时候再转换成字符串,完全一样
不信你在立即窗口中试一下:
?format(cdate("2004-07-16 00:00:00"),"yyyy-mm-dd hh:mm:ss")
2004-07-16 00:00:00
你看是不是又把那个字符串转成原型了呀
rainstormmaster 2004-07-16
  • 打赏
  • 举报
回复
//是这样的,我需要时时记录时间,而且这个时间要入数据库,格式是 2004-07-16 12:00:00。

那就在数据库中保存表示时间的字串
chuting1 2004-07-16
  • 打赏
  • 举报
回复
1、Format(CDate("2004/07/16 00:00:00"), "YYYY-MM-DD HH:MM:SS")
2、date(ddd) & time (ddd)
LichKingSZ 2004-07-16
  • 打赏
  • 举报
回复
用MID来读时间看行不行?
csdnone 2004-07-16
  • 打赏
  • 举报
回复
是这样的,我需要时时记录时间,而且这个时间要入数据库,格式是 2004-07-16 12:00:00。

时间部分 00:00:00 不能丢掉呀,否则就会数据不全了

我查过msdn,知道是1.0 = 1这样把时间给省掉了的,是不是cdate这个函数有问题?,或者有没有其他转换方法,转换后能保留00:00:00
jone999 2004-07-16
  • 打赏
  • 举报
回复
可是又变成String型了:(
jone999 2004-07-16
  • 打赏
  • 举报
回复
Format(CDate("2004/07/16 00:00:00"), "YYYY-MM-DD HH:MM:SS")只有这样了
jone999 2004-07-16
  • 打赏
  • 举报
回复
确实是那样,CDate("2004/07/16 11:11:11")
这样就不会
LichKingSZ 2004-07-16
  • 打赏
  • 举报
回复
晕。。。中海都已经说了,#2004-07-16 00:00:00# = #2004-07-16#
你改成这样看看:
dim a as string
dim b as date
a="2004-07-16 12:00:00"
b= CDate(a)
victorycyz 2004-07-16
  • 打赏
  • 举报
回复

有什么问题吗? 就象1.0 = 1 一样的,不是吗?
csdnone 2004-07-16
  • 打赏
  • 举报
回复


dim a as string
dim b as date
a="2004-07-16 00:00:00"
b= CDate(a)

执行后b=2004-07-16
csdnone 2004-07-16
  • 打赏
  • 举报
回复
我是一步一步调试程序中发现的这个问题,用观察变量窗口看,data型变量
环境版本:vb6+sp6
wxf0204 2004-07-16
  • 打赏
  • 举报
回复
同意 sinom(毛毛.小狮子>>苦学ORACLE) 的说法,cdata 不会自己去掉时间的!
rainstormmaster 2004-07-16
  • 打赏
  • 举报
回复
只是不显示罢了
LichKingSZ 2004-07-16
  • 打赏
  • 举报
回复
不会的,用cdate函数不会把后面的时间去掉,可能是你显示的控件的显示格式定义为不显示时间。
饮水需思源 2004-07-16
  • 打赏
  • 举报
回复
用format函数
format("2004-07-16 00:00:00","YYYY-MM-DD")
victorycyz 2004-07-16
  • 打赏
  • 举报
回复

#2004-07-16 00:00:00# = #2004-07-16#

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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