为什么vf 中用list file*.dbf找不到表文件,而电脑中有表文件,用use +表名也不可以打开表文件,

为什么vf 中用list file*.dbf找不到表文件,而电脑中有表文件,用use +表名也不可以打开表文件,,第1张

路径问题啊

说明你打开的文件不在你现在默认活动目录

比如说你的表再c:/vfp

那么你先set default to c:/vfp

然后再use 表

这样就不会找不到文件了!

use 表名

copy to 文本txt DELIMITED &&将文件名为“表名”的DBF文件转换为文本txt

DELIMITED

创建一个分隔文件。分隔文件是一个 ASCII 文本文件,其中每条记录以回车和换行符结尾。默认以逗号分隔字段。因为字符型数据可以包含逗号,字符型字段应加上双引号定界。除非另外指定,否则新创建的 DELIMITED 文件以 txt 为扩展名。

DELIMITED WITH Delimiter

创建一个用除了引号以外的其它字符作为字符型字段定界符的分隔文件。分隔字符型字段的字符用 Delimiter 指定。 DELIMITED WITH BLANK

创建一个用空格代替逗号分隔字段的分隔文件。 DELIMITED WITH TAB

创建一个用制表符代替逗号分隔字段的分隔文件。 DELIMITED WITH CHARACTER Delimiter

创建一个所有字段用指定的 Delimiter 字符分隔的分隔文件。如果 Delimiter 是一个分号(;),因为其在 Visual FoxPro 中表示命令行的继续,所以应使用引号括上。也可以为 Delimiter 指定 BLANK 和 TAB 关键字。WITHDelimiter 子句和 WITH CHARACTER 子句可以结合使用。

方法一:查询分析器中执行如下语句(先选择对应的数据库)

--如果接受导入数据的SQL表已经存在

insert

into

已经存在的SQL表名

select

from

openrowset('MSDASQL','Driver=Microsoft

Visual

FoxPro

Driver;SourceType=DBF;SourceDB=c:\','select

from

aaDBF')

--也可以对应列名进行导入,如:

insert

into

已经存在的SQL表名

(列名1,列名2)

select

(对应列名1,对应列名2)

from

openrowset('MSDASQL','Driver=Microsoft

Visual

FoxPro

Driver;SourceType=DBF;SourceDB=c:\','select

from

aaDBF')

--如果接受导入数据的SQL表不存在,导入时创建

--方法一:

select

into

要生成的SQL表名

from

OPENROWSET('MICROSOFTJETOLEDB40','dBase

IV;HDR=NO;IMEX=2;DATABASE=c:\','select

from

dbf表名dbf')

--方法二:

select

into

要生成的SQL表名

from

OPENROWSET('MICROSOFTJETOLEDB40','dBase

III;HDR=NO;IMEX=2;DATABASE=c:\','select

from

dbf表名dbf')

--方法三:

select

into

要生成的SQL表名

from

openrowset('MSDASQL','Driver=Microsoft

Visual

FoxPro

Driver;SourceType=DBF;SourceDB=c:\','select

from

dbf表名DBF')

--用前两种方法导入SQL

SERVER后,源表再用VFP打开就不提示“不能存取文件”,说明语句执行后就把源表关闭了。不过也有不尽人意的地方,就是用前两种方法导入后,源表中的字符型字段导入后SQL表字段对应变成NVARCHAR了。

--第三种方法有一个缺点:把DBF表导入SQL

Server中后,马上用VISUAL

FOXPRO打开DBF表,会提示“不能存取文件”,即这个表还被SQL打开着呢。可是过了1分钟左右,再打开DBF表就可以了,说明经过一段时间后查询分析器才把这个表关闭。

--也可以只导几个字段

select

into

要生成的SQL表名

from

openrowset('MSDASQL','Driver=Microsoft

Visual

FoxPro

Driver;SourceType=DBF;SourceDB=c:\','select

字段1,字段2

from

aaDBF')

/--说明:

SourceDB=c:\

c:\是dbf文件的存放目录

aaDBF

是dbf文件名

--/

以上就是关于为什么vf 中用list file*.dbf找不到表文件,而电脑中有表文件,用use +表名也不可以打开表文件,全部的内容,包括:为什么vf 中用list file*.dbf找不到表文件,而电脑中有表文件,用use +表名也不可以打开表文件,、vfp中怎么奖DBF系统格式换为文本文件,并查看该文件、江湖救急,怎样把.dbf表导入SQL库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9604669.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存