b、以Excel为例,必须安装了Excel。
| select * 
from 
OPENROWSET("MICROSOFT.JET.OLEDB.4.0","Excel5.0;HDR=YES;
DATABASE=G:WorkEveryDayDayDoOrderList",OrderList$) | 
 
DATABASE=G:WorkEveryDayDayDoOrderList"是Excel的表名及路径,OrderList$是工作区的名字MICROSOFT.JET.OLEDB.4.0是Excel的驱动程序,也可以用MICROSOFT.JET.OLEDB.5.0,MICROSOFT.JET.OLEDB.8.0,测试所用的window 2003及SQL Server 2000其中OrderList$所面的$不能少,要不能报错,$是代表是工作区3.以VFP(DBF文件名)。
| select * from openrowset("MSDASQL",
"Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;
SourceDB=D:","select * from [temp.DBF]") | 
 
说明:SourceType是数据源类型,SourceDB是数据源,后面是操作DBF的SQL查询语句。 
D. 使用 OPENROWSET 与 INNER JOIN 中的其他资料表。 
以下范例选取储存在相同电脑上 SQL Server Northwind 资料库的 customers 资料表的所有资料,以及 Access Northwind 资料库的 orders 资料表的所有资料。 
附注 以下范例假设已经安装 Access。
| USE pubs
GO
Select c.*, o.*
FROM Northwind.dbo.Customers AS c INNER JOIN 
   OPENROWSET("Microsoft.Jet.OLEDB.4.0", 
   "c:MSOfficeAccessSamplesorthwind.mdb";
"admin";"mypwd", orders) 
   AS o
   ON c.CustomerID = o.CustomerID 
GO | 
 
E.将存储过程的记录集插入到虚拟表中(执行的存储不策有全局虚拟表)。 
如:
| Select * into #t
FROM OPENQUERY([192.168.42.43], "exec [Order].dbo.Or_Select_BackListDetail ""BK0607190001""") | 
 
如下:就会报错,必须先建表create table #t,而且此虚拟表的参数一定要与存储过程的参数一样。 
Insert into #t 
exec [Order].dbo.Or_Select_BackListDetail "BK0607190001" 
F:将打开的相应的文件(dbf,exec等等),从SQL里插入数据进行。
| insert into    
--select * from 
openrowset("MSDASQL", "Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB=d:",
"select * from temp.DBF") 
select top 100 orderno,shipto from ordermaster | 
 
注: 
1、两数字段结构一样(长度、类型) 
2、保证导出表没有为null或空的字段 
3、将你上面的语句改为下面的select * from tmp.DBF,就是不要那个[] 
3、建立链接服务器 
| if   exists   (select   1   from   master..sysservers   
where   srvname   =   "ls_Source")   
exec   sp_dropserver   "ls_Source","droplogins"   
go   exec   sp_addlinkedserver   
 "ls_Source", "ms","SQLOLEDB","TAODBSV001" 
go
exec sp_addlinkedsrvlogin 
 "ls_Source","false","sa","read","" |