我正在使用一个名为PastPerfect的软件程序,它有一个"命令窗口"它表示你可以使用dbase命令对程序的dbf文件进行全局更新。
问题:用户在一个跨越多个记录的日期字段中意外地输入了错误的年份" 1901"并且需要用年份" 2001"来替换/修复它。
我试过了:
2001年更换年(catdate)(catdate)= 1901
它一直告诉我这是Invalid Command
有人能给我正确的dbase / foxpro语法来取代1901年和2001年的所有年份吗?
答案 0 :(得分:3)
REPLACE命令的语法是。
REPLACE FieldName WITH Value FOR BooleanExpression
如果CATDATE是日期字段(没有时间),那么
REPLACE catdate WITH DATE(2001, MONTH(catdate), DAY(catdate)) FOR YEAR(catdate) = 1901
如果CATDATE是日期时间字段,则
REPLACE catdate WITH DATETIME(2001, MONTH(catdate), DAY(catdate), HOUR(catdate), MINUTE(catdate), SEC(catdate)) FOR YEAR(catdate) = 1901