日期:2014-05-17  浏览次数:20427 次

在问个简单的问题。从另外一台电脑上的数据库调取一个数
都还给老师了诶。 偶尔要用 实在是想不起来了。

隔壁电脑  (IP 192.168.0.2  , 账号“sa”密码“123”)   上的 数据库A  里一个表  A1 ,
 A1表如下图 :
 
      a     b     c  
1     10    20    30
2     13    14    16


   现在,我要在我自己的数据库  B  里  的 表B1 中 增加一行数字。 
 B1表 如下图 :
     
      a   b   c   d   
 1    3   4   5   4
 2    2   2   1   1

增加    一行 数,   a:4   b: 5  c:3    d: d的数字即 A1表中b那一列的 第一个数20

------解决方案--------------------

insert into B1 

SELECT 4,5,3,select top 1 b from  OPENDATASOURCE('sqloledb','data source=192.168.0.2;user id=sa;password=123').数据库A..A1



------解决方案--------------------
把表的名称改了一下:

insert into B1(a,b,c,d)
select 4,5,3,
       (
        SELECT top 1 b 
        FROM OPENROWSET('SQLOLEDB',
                        'server=192.168.0.2;uid=sa;pwd=123', --字符串
                        A.dbo.A1)                           --直接写你的数据库和表的名称
       ) as d