首页 新闻 会员 周边

同一服务器下的两个数据库A,B,从A数据库中的几张表中读取相关信息存入到B数据库的一张表里

0
悬赏园豆:50 [已解决问题] 解决于 2013-07-09 17:26

同一MSSQL服务器下的两个数据库A,B,从A数据库中的几张表中读取相关信息存入到B数据库的一张表里,这个如何实现?

问题补充:

表的结构不同 数据量1w以下

cc_jony的主页 cc_jony | 初学一级 | 园豆:46
提问于:2013-07-05 14:43
< >
分享
最佳答案
1

做个sql作业也可以啊

收获园豆:10
chenping2008 | 大侠五级 |园豆:9836 | 2013-07-05 15:03

查询A数据库后获得的数据如何写入B数据库的一张表中

cc_jony | 园豆:46 (初学一级) | 2013-07-05 15:38
其他回答(5)
0

表结构一样?数据量如何?

经常性的可以用复制分发

偶尔一次直接用导入导出功能即可

收获园豆:10
+小马哥++ | 园豆:906 (小虾三级) | 2013-07-05 14:49

通过查询A数据库的结果如何写入B数据库中,写入过程需要适应B数据库中表的结构

支持(0) 反对(0) cc_jony | 园豆:46 (初学一级) | 2013-07-05 15:37

@cc_jony: 你可以写个存储过程,sql 参考缘由心生和幻天芒的。然后新建个作业来调用这个存储过程。

作业中可以用计划来控制导入时间和次数。

支持(0) 反对(0) +小马哥++ | 园豆:906 (小虾三级) | 2013-07-05 16:28

@+小马哥++: 要求要用webservice写 ,webservice可以调用存储过程吗?存储过程我不太懂 没有用过 

支持(0) 反对(0) cc_jony | 园豆:46 (初学一级) | 2013-07-05 16:49

可以的

支持(0) 反对(0) +小马哥++ | 园豆:906 (小虾三级) | 2013-07-05 16:58
0

INSERT INTO B.XX(字段)

  SELECT 字段 FROM A.XX

收获园豆:10
風吹云动 | 园豆:69 (初学一级) | 2013-07-05 16:12

A,B是两个数据库  不是表

支持(0) 反对(0) cc_jony | 园豆:46 (初学一级) | 2013-07-05 16:24

@cc_jony: 你没理解过来,同一台机器上的不同库是可以DataBase.dbo.Table 来进行关联

支持(0) 反对(0) 風吹云动 | 园豆:69 (初学一级) | 2013-07-05 16:27

@缘由人心: 这个还真的不懂  我是小白 第一次接触DataBase.dbo.Table这个 先查查看看

支持(0) 反对(0) cc_jony | 园豆:46 (初学一级) | 2013-07-05 16:52
0
INSERT INTO db1.dbo.table1(col1,col2)
SELECT col1,col2,col3 FROM db3.dbo.table2
UNION
SELECT col1,col2,col3 FROM db3.dbo.table3

db1,db2,db3为数据库名。table1,table2,table3为表名。

收获园豆:10
幻天芒 | 园豆:37175 (高人七级) | 2013-07-05 16:18

"select Studentcode.StudentID,Studentcode.StudentNo,Studentcode.StudentName,Coursecode.CourseID, Coursecode.CourseNumber,Coursecode.CourseName,Coursecode.CoursePoints,Coursecode.CourseTeacher,Classtime.TimeID, Classtime.SchoolTime,Classtime.BreakTime,Course.ID,Course.Weeks " +
"into PurposeData.StNO" +
"from Studentcode,Coursecode,Classtime,Course " +
//"from SourceData.Studentcode,SourceData.Coursecode,SourceData.Classtime,SourceData.Course " +
"where Course.TimeID=Classtime.TimeID and Course.StudentID=Studentcode.StudentID and Course.CourseID=Coursecode.CourseID and Studentcode.StudentNO={0} ", str2);

1 "select Studentcode.StudentID,Studentcode.StudentNo,Studentcode.StudentName,Coursecode.CourseID, Coursecode.CourseNumber,Coursecode.CourseName,Coursecode.CoursePoints,Coursecode.CourseTeacher,Classtime.TimeID, Classtime.SchoolTime,Classtime.BreakTime,Course.ID,Course.Weeks " +
2     "into PurposeData.StNO" +
3                                      "from Studentcode,Coursecode,Classtime,Course " +
4                                      //"from SourceData.Studentcode,SourceData.Coursecode,SourceData.Classtime,SourceData.Course " +
5                                      "where Course.TimeID=Classtime.TimeID and Course.StudentID=Studentcode.StudentID and Course.CourseID=Coursecode.CourseID  and Studentcode.StudentNO={0} ", str2);

像这样写有报错 昨天用你那样用union写的会出现重复字段   

应该怎么改?SourceData是数据库A,

 PurposeData是数据库B,想把A中查询的数据存入B中  

支持(0) 反对(0) cc_jony | 园豆:46 (初学一级) | 2013-07-05 16:43

@cc_jony: 排版好乱,这种sql语句是能执行成功的。如果不去重的话,那就用union all

支持(0) 反对(0) 幻天芒 | 园豆:37175 (高人七级) | 2013-07-05 17:13
0

同一个服务器上 两个数据库 可以写sql的!

收获园豆:5
Tom.汤 | 园豆:3028 (老鸟四级) | 2013-07-06 13:43
-1

 同一服务器上的2个数据库可以在使用表之前,直接指定数据库实例名称。

收获园豆:5
Zachary_Fan | 园豆:762 (小虾三级) | 2013-07-06 15:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册