Please test this program and make sure it isn't going to do anything nasty with your data before you use this!
Brian
With 450 tables you may want to write a prg like:
VarFieldNumbertoChange=2
VarNewFieldName="NewName"
CLOSE ALL
SET SAFETY OFF
ADIR(mytables, '*.Dbf')
for TblCount = 1 to ADIR(mytables, '*.Dbf')
VarTable=mytables(TblCount,1)
use &VarTable
IF DBF()#SYS(5)+SYS(2003)+"\TEMPSTUCT.DBF"
copy struct to tempstuct extended
use tempstuct
go Min(RECCOUNT(),VarFieldNumbertoChange) && will change last field if specified number is out of range
VarActName=alltr(field_name)
use &VarTable
IF VarActName#VarNewFieldName AND DBF()#SYS(5)+SYS(2003)+"\TEMPSTUCT.DBF"
alter table &VarTable rename column &VarActName to &VarNewFieldName
ENDIF
ENDIF
ENDFOR
SET SAFETY On