这个不难
我教你怎么跨数据库(跨服务器都可以)操作多数据表:
新建一个ACCESS,放在VB工程目录下,什么都不要去做,就用到他的一个ODBC功能做桥接,在VB中连接ACCESS数据库照常
我就给个ADO连接ACCESS连接SQL多数据库连接表联合查询两个数据库数据表的例子:
Private Sub 控件名称_事件过程(变量)
Dim A, B as String
'-----------------定义变量来存字符串
Adodc1.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.path & "\ACCESS数据库.后缀"
'-----------------连接ACCESS数据库照常
A="Select 字段1 AS 名称1, 字段2 as 名称2 From 表1 IN [ODBC] [ODBC;Server=SQL Server;uid=用户名;PWD=密码;Server=服务器IP;DataBase=数据库名1] Where 字段3 LIKE %'5555'%"
B="Select 字段8 AS 名称1, 字段9 as 名称2 From 表2 IN [ODBC] [ODBC;Server=SQL Server;uid=2用户名;PWD=密码;Server=服务器IP;DataBase=数据库名2]"
Adodc1.recordsoure= A & "Unoin" & B
Adodc1.Refresh
Set 电子表格.DataSource=Adodc1
End Sub
看到没有?跨了数据库,服务器都可以跨,SQL语句没多大问题吧?我相信,推荐答案那么简单的语句只能解决SQL操作问题。
insert into 数据库1.dbo.表(字段列表) select 字段列表2 from 数据库2.dbo.表 where 条件
其中 列表1的项应该与列表2的项是相等的
H字段可以用以下的方式写
eg
"insert into 数据库1.dbo.表(列一,列二,列三,列四) select 列一,列二,'" & H & "' from 数据库2.dbo.表 where 条件"
INSERT SELECT 语句的语法格式如下:
语法:
INSERT INTO table_name (col1, col2...)
SELECT col1, col2... FROM tablename WHERE search_condition
本质上来说它是将一个SELECT 语句的输出结果在输入到另一个表格中去在INSERT
VALUE 中的规则也适用于INSERT SELECT 语句。