回 帖 发 新 帖 刷新版面

主题:如何将DBF表内容添加到ACCESS数据库中

请教:现有VFP的表EXPERTSS 和ACCESS表EXPERT,两张表格字段完全相同,且包含备注类型的字段。
其中EXPERTSS表中存放了要上传的数据,如何在VFP中使用编程的方式将起数据添加到ACCESS的EXPERT表中??
我用的字符串连接nhandle=Sqlstringconnect("Driver={Microsoft Access Driver (*.mdb)};dbq=D:\专家数据库2.mdb;pwd ='' ")
搞了半天,数据就是传不上去,请大家指教.

回复列表 (共7个回复)

沙发


nhandle=SQLSTRINGCONNECT("Driver={Microsoft Access Driver (*.mdb)};dbq=D:\专家数据库2.mdb;pwd=") 
 ** 注意:pwd=后面没有单引号'',此时的nhandle应该大于0。
use EXPERTSS
SCAN
cSTR="Insert Into EXPERT(字段名1,字段名2,字段名n) Values('"+字段名1+"','"+字段名2+"','"+字段名n+"')"
SQLEXEC(nhandle,cSTR)
ENDSCAN
 ** 试试看,以上代码均为字符型或日期型(日期型格式为2010-12-31),若是数值型则去掉单引号。

板凳

谢谢楼上.按照您的方式处理了,不过还是添加不了数据.
aa = SQLEXEC(nhandle,cSTR)返回-1.
我用远程视图也添加不进去数据.
不知道原因出在什么地方.
还望赐教.

3 楼

一楼的朋友,感谢您的帮助!
按照您的方法,还是不行,aa = SQLEXEC(nhandle,cSTR),返回的一直是 -1.
另外我用远程视图也更新不了.不知道问题出在哪里了.

4 楼

第一、nhandle的值是多少?  &&应该大于0
第二、cSTR的具体内容?     &&如:"Insert Into EXPERT(姓名,性别) Values('张三','男')"

5 楼

假如ACCESS表中的某字段长度是10个字符,而插入记录时大于10个字符,此时程序不报错,但也不能插入记录。

6 楼

感谢王工的帮助.

第一、nhandle的值是大于0的,我已经从数据库中取出来记录了.
第二、cSTR的具体内容和您给出的 :"Insert Into EXPERT(姓名,性别) Values('张三','男')"一样.我用MESSAGEBOX(CSTR)显示了SQL语句,没有书写错误.

我用SQL数据库测试了一下,我的代码没有问题.
问题可能出在ACCESS数据库本身,因为ACCESS的导入功能都不能用.

7 楼

可能的话把ACCESS数据库发给我。sywzs@163.com

我来回复

您尚未登录,请登录后再回复。点此登录或注册