-- 注意:Data Source和User ID中间都要有空格,否则不行;
--在SqlServer里查询Access中的数据;
select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="F:/校风学/MST.mdb";User ID=Admin;Password=')...Category
--将Access导入到Sqlserver中;
SELECT * INTO newtable FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0','Data Source="F:/校风学/MST.mdb";User ID=Admin;Password=' )...Category
--将SQL SERVER表里的数据插入到Access表中
insert into OpenRowSet('Microsoft.Jet.OLEDB.4.0','F:/校风学/MST.mdb';'admin';'',Category) select newsID,newName from news
--或者:
insert into OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="F:/校风学/MST.mdb";User ID=Admin;Password=')...Category select * from news
--在SqlServer里查询excel中的数据;
select * from OpenDataSource('Microsoft.Jet.Oledb.4.0','Data Source="F:/校风学/aa.xls";User ID=Admin;Password=;Extended Properties=Excel 8.0')...[Sheet1$]
select * from OpenRowSet('Microsoft.Jet.Oledb.4.0','Excel 8.0;Database=D:/tutorial.xls',Sheet1$)
select * from openrowset('Microsoft.Jet.Oledb.4.0','Excel 8.0;Database=D:/tutorial.xls','select * from [Sheet1$]')
--将SqlServer查到的数据导到一个excel文件中;
exec master..xp_cmdshell 'bcp "SELECT au_fname, au_lname FROM pubs..authors ORDER BY au_lname" queryout F:/authors.xls -c -S"." -U"sa" -P""'
在查询分析器查询Excel或Access时注意问题:
在SQL查询分析器中不管是打开mdb文件还是打开xls文件,都要求该对文件不得处于已经占用状态,即在执行SQL命令之前,要关闭access或excel对它的打开。否则会出现如下的提示( 这是打开xls时的提示):
服务器: 消息 7399,级别 16,状态 1,行 1
OLE DB 提供程序 'MicroSoft.Jet.OleDB.4.0' 报错。提供程序未给出有关错误的任何信息。
OLE DB 错误跟踪[OLE/DB Provider 'MicroSoft.Jet.OleDB.4.0' IDBInitialize::Initialize returned 0x80004005: 提供程序未给出有关错误的任何信息。]。