FoxPro保留字问题?

I am attempting to read a foxpro table called SCHEDULE.dbf. The data is read in PHP via data connector then piped to my webpage. This all works wonderfully, provided I rename Schedule.dbf. Any name except Schedule seems to work. When I run it named Schedule, however, I get "SQL error: [Microsoft][ODBC dBase Driver] Index file not found., SQL state S0012 in SQLExecDirect" error message. My only idea is that Schedule is a reserved word someplace, but I can't find it on any list. I am at an utter loss. Renaming the table is not really an option as it is part of a larger data entry and management system that I would rather not modify. Any suggestions?

I can't say for dBASE (and I would use Microsoft's OleDb provider specifically for VFP if it IS Foxpro data and not dBASE). In Foxpro, the system works with paired (or even triple) files. All corresponding file names need to be renamed, such as

SCHEDULE.DBF (main data)
SCHEDULE.CDX (compound index file for all indexes for given file)
SCHEDULE.FPT (separate file if any memo/general data columns in the file)

If you try to just rename the .DBF but not the rest (.FPT is only found IF a data column is of type memo or general), then it will choke opening the file.

Additionally. If the table is part of a database container (via VFP), and you try to open it, the file has additional header information to point to the database it is bound to. If it can't find it in the database, that too could give you a misdirected error.

Database Containers in VFP have suffix values of .DBC, .DCT and .DCX.

The error is "Index file not found" - The matching .cdx index file is not present in the same directory as the .dbf file. Make sure it is in the same directory or you can use FoxPro to remove the index from the table.