如何在一个sql语句写对两个数据库中的表进行操作...

时间:2022-11-15 15:29:39
如下:

select a.* from is_s_j.dbo.ii_quali a 
inner join     ies_s_j.dbo.ii_qualit b 
on a.cardno=b.idcardno 

如果:
ii_qualit 在服务器192.168.0.1上
ii_ii_quali 在服务器192.168.2上

是不是写成如下:

select a.* from [192.168.0.2].is_s_j.dbo.ii_quali a 
inner join [192.168.0.1].iies_s_j.dbo.ii_qualit b 
on a.cardno=b.idcardno 

有个问题想问:
如果两个服务器都需要身份验证的话..该如何办?
在sql 2000 中还可以通过 安全性->连接服务器->新建连接  来解决..

但是如果在c#编程中 中该如何实现///

6 个解决方案

#1


建立linkserver就可以了

#2


建立链接服务器

#3


这样来作:
1.如果你是经常型的这样操作
可以创建链接服务器
企业管理器--安全性--链接服务器就可以了
or
sp_addlinkedserver
2。如果你不是经常来用,告诉你2个函数。
  OPENROWSET和OPENDATASOURCE

#4


示例
下面的示例访问来自某个表的数据,该表在 SQL Server 的另一个实例中。

SELECT   *
FROM      OPENDATASOURCE(
         'SQLOLEDB',
         'Data Source=ServerName;User ID=MyUID;Password=MyPass'
         ).Northwind.dbo.Categories

下面是个查询的示例,它通过用于 Jet 的 OLE DB 提供程序查询 Excel 电子表格。

SELECT * 
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
  'Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions



A. 将 OPENROWSET 与 SELECT 语句及用于 SQL Server 的 Microsoft OLE DB 提供程序一起使用
下面的示例使用用于 SQL Server 的 Microsoft OLE DB 提供程序访问 pubs 数据库中的 authors 表,该数据库在一个名为 seattle1 的远程服务器上。从 datasource、user_id 及 password 中初始化提供程序,并且使用 SELECT 语句定义返回的行集。

USE pubs
GO
SELECT a.*
FROM OPENROWSET('SQLOLEDB','seattle1';'manager';'MyPass',
   'SELECT * FROM pubs.dbo.authors ORDER BY au_lname, au_fname') AS a
GO

B. 将 OPENROWSET 与对象及用于 ODBC 的 OLE DB 提供程序一起使用
下面的示例使用用于 ODBC 的 OLE DB 提供程序以及 SQL Server ODBC 驱动程序访问 pubs 数据库中的 authors 表,该数据库在一个名为 seattle1 的远程服务器中。提供程序用在 ODBC 提供程序所用的 ODBC 语法中指定的 provider_string 进行初始化,定义返回的行集时使用 catalog.schema.object 语法。

USE pubs
GO
SELECT a.*
FROM OPENROWSET('MSDASQL',
   'DRIVER={SQL Server};SERVER=seattle1;UID=manager;PWD=MyPass',
   pubs.dbo.authors) AS a
ORDER BY a.au_lname, a.au_fname
GO


#5


如果还不清楚,在查帮助。

#6


谢谢楼上的各位..
我先试一下.

#1


建立linkserver就可以了

#2


建立链接服务器

#3


这样来作:
1.如果你是经常型的这样操作
可以创建链接服务器
企业管理器--安全性--链接服务器就可以了
or
sp_addlinkedserver
2。如果你不是经常来用,告诉你2个函数。
  OPENROWSET和OPENDATASOURCE

#4


示例
下面的示例访问来自某个表的数据,该表在 SQL Server 的另一个实例中。

SELECT   *
FROM      OPENDATASOURCE(
         'SQLOLEDB',
         'Data Source=ServerName;User ID=MyUID;Password=MyPass'
         ).Northwind.dbo.Categories

下面是个查询的示例,它通过用于 Jet 的 OLE DB 提供程序查询 Excel 电子表格。

SELECT * 
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
  'Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions



A. 将 OPENROWSET 与 SELECT 语句及用于 SQL Server 的 Microsoft OLE DB 提供程序一起使用
下面的示例使用用于 SQL Server 的 Microsoft OLE DB 提供程序访问 pubs 数据库中的 authors 表,该数据库在一个名为 seattle1 的远程服务器上。从 datasource、user_id 及 password 中初始化提供程序,并且使用 SELECT 语句定义返回的行集。

USE pubs
GO
SELECT a.*
FROM OPENROWSET('SQLOLEDB','seattle1';'manager';'MyPass',
   'SELECT * FROM pubs.dbo.authors ORDER BY au_lname, au_fname') AS a
GO

B. 将 OPENROWSET 与对象及用于 ODBC 的 OLE DB 提供程序一起使用
下面的示例使用用于 ODBC 的 OLE DB 提供程序以及 SQL Server ODBC 驱动程序访问 pubs 数据库中的 authors 表,该数据库在一个名为 seattle1 的远程服务器中。提供程序用在 ODBC 提供程序所用的 ODBC 语法中指定的 provider_string 进行初始化,定义返回的行集时使用 catalog.schema.object 语法。

USE pubs
GO
SELECT a.*
FROM OPENROWSET('MSDASQL',
   'DRIVER={SQL Server};SERVER=seattle1;UID=manager;PWD=MyPass',
   pubs.dbo.authors) AS a
ORDER BY a.au_lname, a.au_fname
GO


#5


如果还不清楚,在查帮助。

#6


谢谢楼上的各位..
我先试一下.