当前位置: 代码迷 >> Sql Server >> 请高手解答MSsqlserver下实现不同数据库之间的导入导出解决方法
  详细解决方案

请高手解答MSsqlserver下实现不同数据库之间的导入导出解决方法

热度:67   发布时间:2016-04-27 17:18:42.0
请高手解答MSsqlserver下实现不同数据库之间的导入导出
根据选择两个数据库间各表任意字段项对应关系,实现表的导入和导出。

1.首先对两个数据库分别进行连接,地址、数据名、密码
2.分别列出两个数据库所对应的表和字段

我想知道如何实现不同数据库表中的某个列的导入和导出

请高手解答!万分感谢!




------解决方案--------------------
SQL code
/*openDatasource:不使用连接服务器的名称,而提供特殊的链接信息.使用openDatasource的前提是仅当 DisallowAdhocAccess注册表选项针对指定的提供程序显式设置为 0,并且启用 Ad Hoc Distributed Queries 高级配置选项时,OPENDATASOURCE 才可用于访问 OLE DB 数据源中的远程数据。如果未设置这些选项,则默认行为不允许即席访问。*/--代码如下:exec sp_configure 'show advanced options',1reconfigureexec sp_configure 'Ad Hoc Distributed Queries',1reconfigure--(1)例如现在我想打开D盘中BJData.mdb中的BJAdmin表的信息select ID,Title,OwnerName fromopendataSource('Microsoft.Jet.OLEDB.4.0','Data Source="D:\BJData.mdb";')...BJAdmin/*Results:ID          Title                OwnerName----------- -------------------- --------------------------------------------------1           xinrong             4           webmaster            admin5           bing                 webmaster(3 行受影响)*/--(2)我现在要将BJAdmin中BJNewsCategory中的信息插入到A表中--先查询下Test.Newscategoryselect * from  Test.dbo.Newscategory/*ID          Title----------- --------------------1           MSSQL(1 行受影响)*/insert into Newscategory select Title from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="D:\BJData.mdb";')...BJNewsCategory--导入之后再查询select * from  Test.dbo.Newscategory/*ID          Title----------- --------------------1           MSSQL2           新闻分类3           新闻动态4           工程案例5           膜结构知识6           在建工程(6 行受影响)*/--上面的都是在MSSQL中查询Access中的信息,现在将MSSQL中的信息导入到Access中去--(3)将AdminInfo的信息插入到BJData.mdb中的BJAdmin中去select * from Test.dbo.AdminInfo/*ID          Title----------- ------------------------------1           ws_hgo(1 行受影响)*/insert into opendatasource('microsoft.Jet.OLEDB.4.0','Data source="D:/BJData.mdb"')...BJAdmin(Title,RoleID) select Title,1 from AdminInfo--然后查询BJAdmin表的信息select ID,Title,OwnerName fromopendataSource('Microsoft.Jet.OLEDB.4.0','Data Source="D:\BJData.mdb";')...BJAdmin/*ID          Title                OwnerName----------- -------------------- --------------------------------------------------1           xinrong             4           webmaster            admin5           bing                 webmaster12          ws_hgo               NULL(4 行受影响)*/--(4)上面说的是Access与MSSQl之间的操作现在操作下--Excel与MSSQL之间的操作--从Excel中读取信息select * from OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="D:\work.et";Extended properties=Excel 5.0')...[sheet1$]/*EmployeeName        Sex            Age             Post-----------       -----------    --------      ------------ws_hgo             Boy            23             Senior Programmeryangzhognyuan      Boy            24             Programmerchenjing           Girl           24             Designer(3 行受影响)--(5)*//*将本地表中的信息导入到远程数据库表中下面的例子将本地whsxjAdmin种的(Title,Password)插入到远程zhongyiAdmin中去*/insert into opendatasource('SQLOLEDB','Data Source=IP地址;User ID=zhongyi;password=xinrongkeji').sqlzhongyi.dbo.zhongyiAdmin(Title,Password)select Title,Password from whsxjAdmin--下面说下OPENROWSET/*包含访问 OLE DB 数据源中的远程数据所需的全部连接信息。当访问链接服务器中的表时,这种方法是一种替代方法,并且是一种使用 OLE DB 连接并访问远程数据的一次性的临时方法。*/--(1)直接查询远程服务器上面的信息select ID,Title from OpenRowset('SQLOLEDB','IP地址';'zhongyi';'xinrongkeji','select * from sqlzhongyi.dbo.zhongyiAdmin') t--(2)查询Access里面的信息select * from OpenRowset('microsoft.Jet.OLEDB.4.0','d:\BJData.mdb';'Admin';'',BJAdmin) as g
------解决方案--------------------
探讨
根据选择两个数据库间各表任意字段项对应关系,实现表的导入和导出。

1.首先对两个数据库分别进行连接,地址、数据名、密码
2.分别列出两个数据库所对应的表和字段

我想知道如何实现不同数据库表中的某个列的导入和导出

请高手解答!万分感谢!
  相关解决方案