我想在SQL Server 2005的后插入,更新,删除触发器中插入或更新dbf文件。
我想出了这个
INSERT INTO openrowset('MSDASQL','Driver={Microsoft Visual FoxPro Driver};SourceDB=C:\DBASE;SourceType=DBF','select * from persons')
SELECT 'coke','zero',4004
当我在SQL Server Management Studio中运行它或编译触发器时,它工作正常 但当我使用我们的前端.NET程序更新数据时,会弹出一个消息框说
无法执行操作,因为OLE DB提供程序“MSDASQL” 对于链接服务器“(null)”
帮忙吗?谢谢!
答案 0 :(得分:0)
我知道这已经过时了,但今天我遇到了同样的问题。图I我将这里的分辨率发布给后人。
解决方案归结为我如何连接到SQL服务器。
在sql studio中,您是使用sql用户帐户还是Windows用户帐户连接?
我敢打赌它是一个sql用户帐户,在这种情况下,运行主sql server服务的windows帐户用于连接到包含DBF文件的文件系统文件夹。
使用Windows帐户连接到sql时,尝试写入DBF文件时会使用这些Windows凭据。
如果您必须使用Windows帐户连接,请检查该帐户是否有权写入C:\ DBASE