SQLServer和Access、Excel数据传输总结
所谓数据传输,其实是指SQLServer访问Access和Excel之间的数据。
为什么要考虑这个问题?
由于历史原因,很多客户的前期数据都是存储在文本数据库中,如Acess、Excel、Foxpro等。现在系统升级和SQLServer、ORACLE等数据库服务器后,经常需要访问文本数据库中的数据,所以会产生这种需求。前段时间出差的项目面临这样一个问题:SQLServer和VFP之间的数据交换。
在SQLServer中完成标题是一件非常简单的事情。
一般有三种方式:1。DTS工具2。BCP 3。分布式查询。
DTS就不用说了,因为是图形用户界面,很好用。
这里我主要讲后两位学者,以查、增、删、改为简单例子:
下面就不废话了,直接用T-SQL的形式展示。
I. SQLServer和Access
1.在Access中查询数据的方法:
select * from OpenRowSet(@ # Microsoft . jet . oledb . 4.0 @ #,@ #;database=c:\db2.mdb@#,@ # select * from serv _ user @ #)
或者
select * from open data source(@ # Microsoft。Jet.OLEDB.4.0@#,@ # Data Source = " c:\ DB2 . MDB ";用户ID = Admin密码=@#)...服务器_用户
2.从SQLServer写入数据以访问:
insert into OpenRowSet(@ # Microsoft . jet . oledb . 4.0 @ #,@ #;Database = c: \ db2.mdb @ #,@ # select * from accee table @ #)
select * from SQL server表
或使用BCP
掌握..XP _ cmdshell @ # bcp " serv-htjs . dbo . serv _ user " out " c:\ db3 . MDB "-c-q-S,"-U"sa" -P"sa"@#
上面的主要区别是OpenRowSet需要mdb和table存在,当它不存在时BCP会生成mdb。
位律师回复
0条评论