当前位置: 代码迷 >> VFP >> 请用代码演示语法功能:SET CENTURY TO 世纪值 ROLLOVER 年份参照值,该怎么处理
  详细解决方案

请用代码演示语法功能:SET CENTURY TO 世纪值 ROLLOVER 年份参照值,该怎么处理

热度:8930   发布时间:2013-02-26 00:00:00.0
请用代码演示语法功能:SET CENTURY TO 世纪值 ROLLOVER 年份参照值
RT

------解决方案--------------------------------------------------------
SET CENTURY 命令 
请参阅 
 全部折叠 全部展开 
确定 Microsoft Visual FoxPro 是否显示日期表达式的世纪部分,以及 Visual FoxPro 将如何解释仅指定了 2 位年的日期。

 
SET CENTURY ON | OFF | TO [nCentury [ROLLOVER nYear]]
 

参数
ON 

指定在包含 10 个字符(包括日期分隔符)的日期格式中,用 4 位数字表示年。注意: 
要提供 2000 年兼容,建议总是设置 SET CENTURY 为 ON。 
  

OFF 

(默认) 指定在包含 8 个字符的日期格式中,用 2 位数字表示年,并在进行日期计算时假定为二十世纪。 
TO nCentury 

从 1 到 99 的数值中指定当前世纪。当一个日期用 2 位数字表示年时,nCentury 确定了该年的世纪。ROLLOVER 值确定了该年是在 nCentury 世纪,还是在 nCentury 之后的世纪。 
ROLLOVER nYear 

从 0 到 99 的数值中指定年数,大于等于该年数的年份被认为是当前实际,小于该年数的年份被认为是下个世纪。nYear 的默认值是当前年加 50 年后的最后两个数字 —— 如果当前年是 1998,则 nYear 是 48,即2048 (1998 + 50)的最后两个数字。注意,翻转值(rollover value)仅确定一个在输入时不带世纪部分的日期的世纪 —— 不建议使用不明确的日期格式。例如,如果当前年是 1998 且 nYear 是默认值(48),则任何在输入时不带世纪部分且大于等于 48 的年份,都被认为是在当前世纪(二十世纪)。任何在输入时不带世纪部分而在 48 之前的年份,都被认为是在下一世纪(二十一世纪)。 
说明
用 SET CENTURY 指定如何显示日期变量和函数。

发出不带任何参数的 SET CENTURY TO 命令,会将默认世纪恢复为当前世纪,并且将 ROLLOVER 恢复为当前年加 50 年后的最后两个数字。在 Visual FoxPro 5.0 中,发出不带任何参数的 SET CENTURY TO 命令,将设置为 19 世纪,并将 ROLLOVER 设为 0。

SET CENTURY 的作用域是当前数据工作期。新的数据工作期初始化为当前世纪,忽略 SET CENTURY 为当前数据工作期的设置值。

SET CENTURY TO ROLLOVER 在 Visual FoxPro 5.0 及以上版本中可用,并允许您在设置 SET CENTURY OFF 时,控制日期中使用的年。它也允许翻转值,因为许多应用程序中包含了跨越多个世纪的日期。

注意: 
SET CENTURY OFF 总是隐含日期在二十世纪。但是,SET CENTURY TO 语法优先于该设置。因此,在 Visual FoxPro 5.0 及以后版本中,SET CENTURY ON/OFF 的设置仅控制显示的位数。 
  

SET CENTURY TO 的值的作用域是当前数据工作期。

在 Visual FoxPro 5.0 中,发出不带任何参数的 SET CENTURY TO 命令时,如果两位系统日期年小于 50,则设置当前世纪 –1,并翻转到 0(ROLLOVER值)。 例如,如果当前年是 1998,则 nYear 将为 48,即2048 (1998 + 50)的最后两个数字。