将DBF表导入到SQLSERVER中的函数

将DBF表导入到SQLSERVER中的函数,第1张

将DBF表导入到SQLSERVER中的函数,第2张

给你一个自己写的函数,把DBF表导入到SQL SERVER数据库
。我的程序里一直在用,还挺方便的
。请指出来教我。如果您有任何问题,请回复或发邮件给trywell@sohu.com
。连接句柄为CON,在调用这个函数之前,可以执行下面的语句con = sqlstringconnect(" driver = SQL server;SERVER=(本地);UID = SAPWD =;DATABASE=您的数据库名称")
***dbftosql()

过程DBFTOSQL
PARA MDBF
LOCAL I,MFIELD,MTYPE,MCOLUMN,MSQLTYPE,MLEN,MSQL1,msql 2
m field = ' '
MTYPE = ' '
m column = ' '
msql type = ' '
MLEN = ' '
msql 1 = ' '
msql 2 = ' '
IF!USED(MDBF)
USE & MDBF
ENDI
SELE & MDBF
I = 1
DO WHILE!EMPTY(FIELD(I))
M FIELD = FIELD(I)
MTYPE = TYPE(M FIELD)
DO CASE
CASE UPPER(TYPE(M FIELD))= ' C '
msql TYPE = ' CHAR '
CASE UPPER(TYPE(M FIELD))= ' Y '
msql TYPE = ' MONEY '
CASE UPPER(TYPE(M FIELD))= ' D '
msql TYPE = ' DATETIME '[]
MCOLUMN = FIELD(I)+SPACE(1)+ALLT(msql type)+MLEN
ELSE
MCOLUMN = MCOLUMN+','+FIELD(I)+SPACE(1)+ALLT(msql type)+MLEN
ENDI
IF EMPTY(msql 1)
msql 1 = FIELD(I)
ELSE
msql 1 = msql 1+','+ELSE +FIELD(I)
ELSE
msql 2 = msql 2+',?'+FIELD(I)
ENDI
I = I+1
ENDD
MSQL = ' CREATE TABLE '+MDBF+SPACE(1)+'('+MCOLUMN+')'
IF SQLEXEC(CON,MSQL)= 1
ENDI
IF RECCOUNT()> 0
GO
DO WHILE!EOF()
I=1
DO WHILE!EMPTY(FIELD(I))
XX = FIELD(I)
IF XX = . null .
REPL & XX WITH ' '
ENDI
I = I+1
ENDD
MSQL = ' INSERT INTO '+MDBF+SPACE(1)+'('+msql 1+')'+SPACE(1)+'值('+MSQL2+')'
IF SQLEXEC(CON,MSQL)= 1[]

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 将DBF表导入到SQLSERVER中的函数

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情