在网上下的源码,有时候是Access数据库,但是我用的又是MSSQL,所以把Access的数据库转换为MSSQL的数据库就势在必行了,这是昨天我试的方法,请各位指正
从access的mdb文件导入到mssqlserver:
注:不局限于mdb文件,ade文件也可,但是这两者的区别我不是很懂,高手知道的话可以告知!
1、配置sqlserver的外围配置(打开sql外围配置)选中“启用OPENROWSET和OPENDATASOURCE支持”
2、执行sql语句:
SELECT *
INTO b_content(在MSSQL中欲创建的表名)
FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0',
'Data Source="D:\DB.mdb";User ID=Admin;Password=') ...b_content(在Access中的目标表名)
**不过这个有一个缺点:每次只能执行一个表的操作,操作操作起来比较麻烦**
从sqlserver导入数据到access
1、执行sql语句
insert into OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
'Data Source=" D:\DB.mdb";User ID=Admin;Password=')...表名
(列名1,列名2)
select 列名1,列名2 from sql表
复制表数据
insert into Ffb select * from OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0', 'Data Source="D:\DB.mdb";User ID=Admin;Password=' )...Ffb
**不一样的数据表结构**
不一样的话,
insert into Ffb(字段1,。。) select (字段1,。。) from OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0', 'Data Source="D:\DB.mdb";User ID=Admin;Password=' )...Ffb
以上即为MSSQL与Access互导的第一部分,事实上不只上面的方法。而且这样导入的话还有很多问题,诸如Access的字段到了MSSQL的变化,以及设置的默认值的丢失等等,在接下来的文章中我会继续探讨。