日期:2014-04-17  浏览次数:20397 次

通过使用SQLserver的查询分析器执行SQL语句实现:

一.将Access数据导入到SQLserver中

在SQLserver中执行如下语句就能将Access 中B04表中的数据导入到SQLserver中的sqltablenaem表中

INSERT INTO sqltablename(sfield1,sfield2,sfield3,sfield4,sfield5,sfield6)

SELECT CONVERT(char(10),afield1),afield2,afield3,afield4,afield5,afield6

FROM opendatasource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:\doc\accessdb.mdb";Jet OLEDB:Database Password=abc)...B04

说明:

1.CONVERT(char(10),afield1)可以对数据的类型进行转换,控制长度;

2.在“opendatasource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:\doc\accessdb.mdb";Jet OLEDB:Database Password=abc)...B04”中Data Source="c:\doc\accessdb.mdb为Access数据库的物理路径(保证两个数据库在一台机器上);

3.Password=abc中“abc”是Access数据库的密码,如果数据库无密码就不填写;

4.B04为在Access数据库中的表名;

5.也可以加一些条件如WHERE afield='a' and ...,有选择条件的导入数据

二.将SQLserver数据导入到Access中

在SQLserver查询分析器中执行如下代码

INSERT INTO opendatasource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:\doc\accessdb.mdb";Jet OLEDB:Database Password=abc)... B04 (afield1,afield2,afield3,afield4,afield5,afield6)

SELECT sfield1,sfield2,sfield3,sfield4,sfield5,sfield6

FROM sqltablename

说明:也可以加一些条件如WHERE afield='a' and ...,有选择条件的导入数据。

总结:这都是插入语句,文章中只用到INSERT 的一种形式,还有其它的形式都可以用于数据互导