要点:构造一条SQL语句字符串,各部分采用单引号括起来,原来单引号的地方变双引号,N表示构造的字符串是nvarchar类型
1、不带参数的写法
如:
select PCDM,PCMC from openrowset('MSDASQL','Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=D:\AA\','select * from PC')
使用存储过程:
create proc p_DBFSelect
@path varchar(2000),
@fname nvarchar(200)
as
declare @sql nvarchar(4000)
set @sql=N'select PCDM,PCMC from openrowset(''MSDASQL'',''Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB='+@path+N''',''select * from '+@fname+N''')'
exec(@sql)
GO
2、带参数的写法
如:
select ZYDM from openrowset('MSDASQL','DDriver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=D:\AA\','select * from T_JHK') where ZYDM=@ZYDH and KLDM=@KLDM
使用存储过程:
create proc p_SelectZYDMByZYDH
@path varchar(2000),
@ZYDH varchar(10),
@KLDM varchar(2)
as
declare @sql nvarchar(1000)
set @sql=N'select ZYDM from openrowset(''MSDASQL'',''Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB='+@path+N''',''select * from T_JHK'') where ZYDH='+@ZYDH+N' and KLDM='+@KLDM
exec(@sql)
GO