怎么同时输出两个不同数据库相同数据表名的内容

来源:百度知道 编辑:UC知道 时间:2024/06/10 16:48:39
在MSSQL中,有两个数据库2008和sample,这两个表中都有L_goods数据表,里面的结构一模一样。只是里面的数据有相同也有不相同的。
我想在一个表格中输出这两个表的内容,并让数据库:2008的内容在前面显示,数据库sample的数据在后面显示,请问该怎么写?

连接数据库原来的代码:
connstr = "driver={SQL Server};server=" & strSQLServer & ";UID=" & strSQLUser & ";PWD=" & strSQLPassword & ";database=" & strSQLDataBase & ""

SQL语句:
sql="select * from "&l_goods&" where name like '%"&formatStr(texts)&"%' and closed<>'1' order by code asc"
原来的代码是只显示出一个数据表的内容。谁帮我改下啊? 实在是没过这方面的经验所以才请教大家的,谢谢各位了!
L_goods的字段名都一样,全都是有goodsid code name specs等字段

如果查询时,第一个数据表没有符合条件的,就直接显示第二个数据表的,
第二个数据表没有,只显示第一个数据表的
如果都有符合条件的记录,就在表格内先显示第一个数据表所有符合数据,接下来显示第二个数据表
是的,用的VB
用这样在查询分析器中可以正确输出
select * from 2008.dbo.l_goods where name like '%电%' ;select * from sample.dbo.l_goods where name like '%电%' 连接数据库的代码需要再改下吗?
NextRecordset方法怎么写?我想实现把2008数据库都显示完后再显示

如果数据不会变动的话,或者说是很少有数据修改的话
可以把sample中的l_goods导入到2008数据库中,名字随便起个,比如叫sample_l_goods,然后做连接查询
select * from l_goods
union all
select * from sample_l_goods

如果数据是实时变动的话,可以建立一个存储过程。
在存储过程中实现两个数据库的连接查询,
如果两个数据库位于不同实例的话:
sp_addlinkedserver
sp_addlinkedsrvlogin
这两个用于连接两个数据库,具体用法查帮助,否则跳过此步。
同样用union all进行查询。
select * from [2008].dbo.l_goods
union all
select * from [sample].dbo.l_goods

LZ用的是VB吧 可不可以用一个ADODC来连接两个表呢?就如上所说 用IF语句判断 第一个数据表没有符合条件的,用ADODC连接第二个数据表的,第二个数据表没有,就用ADODC显示第一个数据表的

在select语中用 union all 合并查询
或用两条select语句返回两个数据集,每条语句后面用“;”分隔,并用NextRecordset方法调用不同的数据集