ACCESS读取的问题

linguojin11 2010-01-14 03:46:30
/*
一、SQLServer和Access

1、查询Access中数据的方法:

select * from OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from serv_user')

或select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="c:\DB2.mdb";User ID=Admin;Password=')...serv_user

2、从SQLServer向Access写数据:

insert into OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from Accee表')
select * from SQLServer表

或用BCP:master..xp_cmdshell'bcp "serv-htjs.dbo.serv_user" out "c:\db3.mdb" -c -q -S"." -U"sa" -P"sa"'

上面的区别主要是:OpenRowSet需要mdb和表存在,BCP会在不存在的时候生成该mdb

3、从Access向SQLServer写数据:

有了上面的基础,这个就很简单了

insert into SQLServer表 select * from
OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from Accee表')

或用BCP

master..xp_cmdshell'bcp "serv-htjs.dbo.serv_user" in "c:\db3.mdb" -c -q -S"." -U"sa" -P"sa"'

4、删除Access数据:

delete from OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from serv_user')
where lock=0

5、修改Access数据:

update OpenRowSet('microsoft.jet.oledb.4.0',';database=c:\db2.mdb','select * from serv_user')
set lock=1
*/
以上为ACCESS操作的相遇语句,但是我按照上面操作时却提示错误,原语句如下:



select * from openrowset('microsoft.jet.oledb.4.0','database=d:\lin1027.mdb','select * from lin1')




错误如下:
链接服务器"(null)"的 OLE DB 访问接口 "microsoft.jet.oledb.4.0" 返回了消息 "找不到可安装的 ISAM。"。
消息 7303,级别 16,状态 1,第 1 行
无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "microsoft.jet.oledb.4.0" 的数据源对象。

...全文
82 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
a992513385 2012-10-06
  • 打赏
  • 举报
回复
select * from OpenRowSet('microsoft.jet.oledb.4.0','c:\db2.mdb','select * from serv_user')
这样试一下
ACMAIN_CHM 2010-01-14
  • 打赏
  • 举报
回复
starseeker7 2010-01-14
  • 打赏
  • 举报
回复
jf

34,571

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧