关于SQL2005与VF6数据库导入导出问题(200分)

  • 主题发起人 主题发起人 pangrui
  • 开始时间 开始时间
P

pangrui

Unregistered / Unconfirmed
GUEST, unregistred user!
我是用SQL语句来执行的
从VF6到SQL2005我用如下语句是可以的:
INSERT INTO stocknew
select * from OPENROWSET('MSDASQL',
'Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=d:/foxdata/',
'select * from [stock.DBF]')
where bar_code
not in (select bar_code from stocknew)

但是从SQL2005到VF6就不行了
INSERT INTO OPENROWSET('MSDASQL',
'Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=d:/foxdata/',
'select grn_no from [grn.DBF]')

select grn_no from grnnew where grn_no not in
(select grn_no from OPENROWSET('MSDASQL',
'Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=d:/foxdata/',
'select grn_no from [grn.DBF]'))
提示如下:
OLE DB provider "MSDASQL" for linked server "(null)" returned message "不能更新查询,因为 FROM 子句不是单一的简单表名。".
Msg 7399, Level 16, State 1, Line 1
The OLE DB provider "MSDASQL" for linked server "(null)" reported an error. The provider reported an unexpected catastrophic failure.
Msg 7343, Level 16, State 2, Line 1
The OLE DB provider "MSDASQL" for linked server "(null)" could not INSERT INTO table "[MSDASQL]".
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
3K
import
I
I
回复
0
查看
2K
import
I
后退
顶部