有点难度的问题。急
INSERT INTO openrowset( 'Microsoft.Jet.OLEDB.4.0 ', 'G:\DATA\A.mdb '; 'admin '; ' ',ZW_a) (Item_name,nyear,DWDM,LXDM,LXMC,JFYA,JFYB,DFYA,DFYB,PZYA,PZYB,PZWA,PZWB,PZHM)
SELECT ' ', '2005 ', '33012401001 ',ISNULL(LXDM,9),LXMC,JFYA,JFYB,DFYA,DFYB,PZYA,PZYB,PZWA,PZWB,PZHM
From zt001_2005.dbo.ZW_a
在查询分析器中执行正确,但在应用程序中执行报错:
异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项。这将确保一致的查询语义。请启用这些选项,然后重新发出查询。
如果插入的表也是SQL数据库的话,在插入前加上这两句就可以了。
SET ANSI_NULLS ON
SET ANSI_WARNINGS ON
但是我要插入到ACCESS数据库中。无法对ACCESS进行如上的设置。
请问有没有其他办法解决。只要能将数据插入到ACCESS表中就行。
------解决方案--------------------ACCESS没有这两种设置选项
SET ANSI_NULLS ON
SET ANSI_WARNINGS ON
------解决方案--------------------这两句实际上是可以在代码中写的。
你用的开发环境是什么?
------解决方案--------------------把语句写在存储过程里,应用程序调用过程
------解决方案--------------------做兩個連接,一個連接sqlserver,一個連接Access,
把從sqlserver查詢得到結果通過變量臨時存儲,再插入到Access
數據分步循環進行,
------解决方案--------------------PB的程序,你可以在PB代码中,连接完数据库后,增加下面的语句:
EXECUTE IMMEDIATE 'SET ANSI_NULLS ON ' USING SQLCA;
EXECUTE IMMEDIATE 'SET ANSI_WARNINGS ON ' USING SQLCA;