Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Lnguage Driver Mismatch

Status
Not open for further replies.

GrahamYSA

Technical User
Jan 7, 2003
27
0
0
AU
Hi
I have upgraded to dBase V for DOS to overcome the well known indexing problem in dBaseIV. I am running dBaseV on two machines with XP and they run fine until I try to access a .dbf from the other machine. I get the message "Mismatched language driver dor database ***.dbf. OK to use with your current language driver?" If I answer OK the databses works fine but all the indexes have to be rebuilt. Then of course when I open the database back up on the first machine I have to go through the same process. Any way to make the two machines talk the same language (or find out which language they are using!)

Thanks
 
Is the error number 530 or 531? (Yes, that would be helpful!)

Error 530 is when the mismatch is found with databases.
Error 531 is when the mismatch is found with indexes.

Read pages 372-374 of the manual. Most likely you are using the default setting of SET LDCHECK ON which is fine. Even if you have the same DOS code pages set on both computers, you need to have LangTable and ASCIIsort set identically on both machines, see chapter 2 of the booklet Getting Started. Your problem may be that these are not identical on both computers when those tables were created. Is it possible that your earlier dBase version was limited to code page 437, but now on one of the computers you're trying to use another such as 850 now that you have version 5.0? You'll have to standardize on one or the other, most likely.

Note: Page 374 says a table is permanently marked for a certain code page. You'll have to create new tables and append from the old ones to change code pages. But beware of character differences since they are not automatically converted when appended. Test and check afterwards to be sure!

Generally I find that I use the default code page 437, as that's the most common for ASCII order. Another common one is 850. Other countries can use multiple code pages, see Appendix H: (each line has its own driver)

850 Brazil/Portugal
860 Brazil/Portugal
852 Czechoslovakia
867 Czechoslovakia
865 Denmark
850 Denmark
437 Finland
437 France
850 France
850 French/Canadian
863 French/Canadian
437 French/Canadian
437 Germany
850 Germany
850 Germany (DIN dictionary order)
437 Greece
852 Hungary
437 Italy
850 Italy
437 Netherlands
850 Netherlands
852 Poland
866 Russia
437 Spain
850 Spain
850 Spain (Dictionary order)
437 Sweden
850 Sweden
857 Turkey
437 United States (ASCII order)
437 Western Europe
850 Western Europe
437 Western Europe (Generic dictionary order)
850 Western Europe (Generic dictionary order)

(Note: If "order" not specified then it is listed as dBase IV 2.0 compatible.)








 
In your CONFIG.DB file here are some lines you can add or adjust to modify the default language driver (USA is given here as an example):

LANGTABLES = OFF && default setting
ASCIISORT = OFF && default setting
LDRIVER = DB437US0 && code page 437 (U.S. ASCII)
LDCHECK = ON && default setting (also a SET command)

Note that only one LDRIVER can be set at a time. Probably no driver assignment is needed if the default language driver is used.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top