如何用VFP的dbf进行SQLServer7.0的分布式查询

如何用VFP的dbf进行SQLServer7.0的分布式查询,第1张

如何用VFP的dbf进行SQLServer7.0的分布式查询,第2张

摘要

本文演示了如何执行一个分布式SQL Server查询来从FoxPro获取数据。dbc和。dbf文件。

更多信息

Microsoft SQL Server 7.0提供了基于OLE DB访问接口执行查询的能力。这是通过使用OpenQuery或OpenRowset Transact-SQL函数或包含连接的服务器名称的四个查询来完成的。

例如:

sp _ addlinkedserver ' my linked server ',' product_name ',' myoledbprovider ',' data_source ',' location ',' provider_string ',' catalog '

SELECT * FROM OPENQUERY(mylinkedserver,' select * from table1 ')

您可以使用Microsoft ole db provider for ODBC(msdas QL)和Visual FoxPro ODBC驱动程序来设置链接服务器,以执行基于FoxPro的分布式查询。dbc和。dbf文件。不支持Jet OLEDB提供程序和FoxPro。

下面的T-SQL示例代码演示了如何通过OpenQuery和OpenRowset函数设置和使用分布式查询FoxPro。它还演示了如何从SQL Server更新远程FoxPro表。您可以在SQL Server 7.0计算机上安装Visual FoxPro ODBC dri。在SQL查询分析器中测试这些代码。您需要将数据源名称和路径更改为适当的FoxPro文件:


/* OPENROWSET和OPENQUERY示例。通过带有VFP的ODBC OLE DB访问接口*/

/*这些OPENROWSET示例依赖于示例文件VFP98\data\Testdata.dbc
如果您的数据位于不同的位置,请修改您的代码*/

-= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
-使用DBC文件

select * from openrowset('MSDASQL ',
' Driver = Microsoft Visual FoxPro Driver;
SourceDB = e:\ VFP 98 \ data \ test data . DBC;
SourceType=DBC ',
'select * from客户所在国家!= "美国"按国家排序))
开始

select * from openrowset('MSDASQL ',
' Driver = Microsoft Visual FoxPro Driver;
SourceDB = e:\ VFP 98 \ data \ test data . DBC;
SourceType=DBC ',
' select * from customer where region = " WA " ')
go

更新openrowset('MSDASQL ',
' Driver = Microsoft Visual FoxPro Driver。
SourceDB = e:\ VFP 98 \ data \ test data . DBC;
SourceType=DBC ',
' select * from customer where region = " WA " ')
set region = " Seattle "
go

-检查以验证更新了哪些行
select * from openrowset(' MSDASQL ',
' Driver = Microsoft Visual FoxPro Driver;
SourceDB = e:\ VFP 98 \ data \ test data . DBC;
SourceType=DBC ',
' select * from customer where region = " Seattle " ')
go

- OPENROWSET DSN示例
/*注意:如果SQL Server配置为使用本地帐户DSN示例,它可能会失败。*/
Select * from openrowset(' msdasql ',
' DSN = Visual FoxPro Database;
SourceDB = e:\ VFP 98 \ data \ test data . DBC;
SourceType=DBC ',
'select * from客户所在国家!= "美国"按国家排序))
开始

/* sp_addlinkedserver示例*/
-带DSN的sp_addlinkedserver示例

/*您需要生成一个DSN并将其指向Testdata数据库。
修改您的代码以反映DBC的位置*/

/*注意:如果SQL Server被配置为使用本地帐户DSN示例,它可能会失败。*/
SP _ addlinkedServer '带DSN VFP测试数据库',
',
' MSDASQL ',
' VFP系统DSN' [/br]]

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 如何用VFP的dbf进行SQLServer7.0的分布式查询

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情