VFP数据库数据导入mysql

由于VFP数据库在2007年后就不再版本更新,其数据导入mysql很容易产生乱码,经过研究,发现先将VFP数据库数据导出成csv文件然后导入到mysql可以解决乱码问题。但数据中”?”很容易造成导出的csv文件错列,因此导出csv文件前需要清除”?”。CSTPCD数据库中可能存在问号的字段主要是lm、lme、dq、jjxm、y 等5个字段,需要依次对这5个字段清除”?”

解决数据中符号问题

可以首先使用select distinct命令查看一下各字段数据都存在哪些符号。除”?”外,数据结尾的”,”等符号可能也会造成csv错列问题。

举例:清除”?”符号(lm字段)

双字节”?”符号

1
REPLACE ALL lm WITH CHRTRAN(lm,'?','') FOR [?]$lm

单字节”?”符号

1
2
REPLACE ALL lm WITH CHRTRANC(lm,'?','') FOR [?]$lm
REPLACE ALL lm WITH SUBSTR(lm,1,LEN(ALLTRIM(lm))-1) FOR RIGHTC(ALLTRIM(lm),1)=[?]

导出CSV文件

1
Copy TO D:/myData.csv TYPE CSV

导入mysql

直接使用图形化界面工具,如sequel pro等导入mysql数据库,或者LOAD DATA INFILE命令。