2012-03-22 135 views
0

嗨我在我的脚本中使用date()来自动获取今天的日期。在窗体上显示的是完美的,但是,当这个带有日期值的字段被保存到MS Access数据库中时,该值将变为6.77751671787457E-05 ....因此,要在表单中简略显示,如下所示: 2012年3月22日(正确),并保存到数据库时它显示如下:6.77751671787457E-05(不正确)..任何帮助将非常感激。vbscript使用日期()获取今天的日期问题

+0

是几号保存到列的类型? – quzary 2012-03-22 11:08:46

+0

列类型是文本。 – 2012-03-22 11:12:12

回答

1

为什么不:

cADO.Execute "INSERT INTO tblmdfUK (txtDateReg, txtCompany) VALUES (Date(), " & truncForm("txtCompanyName") & ")" 

或者更好的,使用的参数,虽然日期应该不需要在此情况的参数,只是公司名称。

1

如果将数据保存在文本字段中,最好在保存之前使用cstr()。

+0

我试过使用cstr,而不是日期,它显示的数据库中:6.77751671787457E-05 ..它应该显示03/22/2012 ...我真的不明白为什么它是单独窜改 – 2012-03-22 11:25:20

+0

我正在使用这个: CSTR(date()) – 2012-03-22 11:26:41

+0

能否显示代码 – quzary 2012-03-22 12:30:20

2

格式的日期,看起来像这样#YYYY-MM-DD HH:MM:SS#因为这是该Access可以理解的唯一格式:

accessDate="#" & right("00" & year(date()), 4) & "-" & right("0" & month(date()), 2) & "-" & right("0" & day(date()), 2) & "#" 
0

这应该工作(注意周围的单引号日期)

cADO.Execute "INSERT INTO tblmdfUK (txtDateReg, txtCompany) VALUES ('" & CStr(date()) & "', " & truncForm("txtCompanyName") & ")" 

我现在使用这种方法()成功没有CStr。 在一个变量中的SQL语句,所以你可以看到它在即时窗口,你会看到这个问题:

INSERT INTO tblmdfUK (txtDateReg, txtCompany) VALUES (3/22/2012,