Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

请教高手CDate()函数的使用

giu  发表于:2009-09-03 17:01:06  
复制

   我是一个教学者,在access的教学中,遇到CDate(入库时间.value),得不到正确的时间,本来入库时间在表里是6/1/2009,但通过CDate(入库时间.value),得到的时间为1970,请教各位高手,这是什么原因?

 

Top
wyh-感谢各位老师。 发表于:2009-09-03 17:46:35

在ACCESS帮助中有:

 

关于使用不同的日历

本主题中的部分内容可能不适用于某些语言。

Access 在所有地区(泰国和东亚地区除外)除支持标准公历外,还支持使用回历。

如果打开一个引用日期的现有数据库,并且选择了错误的日历设置,该程序会报告各种错误或其他不可预料的行为。例如,如果选中了“回历”设置,并且一个报表引用公历 (公历:西方国家/地区通用的日历。在公元 1582 年作为对 Julian 日历的修订引入该日历。)日期,而该日期不能用作回历 (回历:伊斯兰教国家/地区使用的阴历。)日期,则 Access 会显示一条语法错误消息(例如,12/31/99 会造成一个语法错误,因为回历的月份没有 31 天)。

为了避免这类问题,在数据库中引用的日期必须基于相同的日历。

 要点   建议您在首次创建数据库时选择该数据库的日历,然后再也不要更改它。

把数据库日历设为回历时的其他注意事项

  • 为确保回历日期字符串在表达式中和 Visual Basic for Applications 语句中计算正确,可使用 CDate 函数计算该字符串,而不要将该字符串声明为常量。

    例如,键入 CDate("1/25/20") 而不要键入 #1/25/20#

    CDate 函数总是根据活动的数据库日历返回一个值,而日期常量总使用公历进行计算。

  • 为了得到可靠行为,需要以明确的方式输入和显示日期。例如,如果年份或月的日期是 12 或更小(例如,3/11/10),那么短日期格式的日期在查询中可能会被错误解释。中等日期格式的日期只显示月份名称的前几个字符,这会造成不确定或不合需要的显示。要尽量使用长日期格式。通过使用 Windows“控制面板”中的“区域设置”,可以更改长日期格式的日期的显示方式。
  • 在一个表(在表的“设计”视图 (设计视图:显示数据库对象(包括:表、查询、窗体、宏和数据访问页)的设计的窗口。在设计视图中,可以新建数据库对象和修改现有数据库对象的设计。)中)的“日期/时间”字段的“有效性规则”属性中输入的日期必须是回历。但是,若要让“有效性规则”日期在有效性消息中显示为一个回历日期,有效性规则必须使用 CDate 函数(例如,'CDate ("1/25/1420")')。
  • Access 示例应用程序(例如“罗斯文”数据库)没有本地化,其数据库日历应是公历。由于示例应用程序包含硬代码日期常量,而它们不是有效的回历日期,所以建议您在运行示例应用程序时不要将数据库日历设为回历。
  • 除非明确使用 Format() 函数,否则所有的回历年份都显示为四数字的年份值(例如,1420)。
  • 用于设置您计算机的系统日期的 Visual Basic Date 函数,不接受回历日期。如果数据库日历设为回历,在使用 Date 函数设置系统日期之前,需要将数据库日历设为公历。
  • 导出为文本文件的表中的日期总是保存为公历值。如果数据库日历设为回历,在导出过程中会自动将回历转换为公历。类似地,从文本文件导入的表中的日期被假定为公历日期,并且如果数据库日历设为回历,则在导入过程中公历日期将被转换为回历值。



总记录:1篇  页次:1/1 9 1 :