我需要在 VB 中编写一些连接两个或多个 mdb 数据库的程序,但我不知道该怎么做。我想我必须加载所有数据库才能逐表连接。并再次将其保存为“.mdb”(我不知道相应的命令 - 我想我可以找到它们,但如果您可以将它们发布在这里,那就太好了)。 我用谷歌搜索,但找不到正确的答案 - 就像我对我的问题使用了错误的词一样......
如果你能帮助我,那就太好了:)
数据库示例:
DB1:
-DB1_Table1
-DB1_Table2
-DB1_Table3
DB2:
-DB2_Table1
-DB2_Table2
-DB2_Table3
ConnectedDB(DB1 = 主站/DB2 = 从站):
-DB1_Table1 + DB2_Table1
-DB1_Table2
-DB1_Table3 + DB2_Table3
最佳答案
在“C:\Users\Public\test\DB1.mdb”中,我有 [DB1_Table1] 包含
ID DB1_Text
-- --------------
1 value from DB1
在“C:\Users\Public\test\DB2.mdb”中,我有 [DB2_Table1] 包含
ID DB2_Text
-- --------------
1 value from DB2
在 VB.NET 中,以下代码...
Using con As New OleDbConnection
con.ConnectionString =
"Provider=Microsoft.ACE.OLEDB.12.0;" &
"Data Source=C:\Users\Public\test\DB1.mdb;"
con.Open()
Using cmd As New OleDbCommand
cmd.Connection = con
cmd.CommandText =
"SELECT " &
"DB1_Table1.DB1_Text, " &
"DB2_Table1.DB2_Text " &
"FROM " &
"DB1_Table1 " &
"INNER JOIN " &
"[;Database=C:\Users\Public\test\DB2.mdb].DB2_Table1 " &
"ON DB1_Table1.ID = DB2_Table1.ID"
Dim rdr As OleDbDataReader = cmd.ExecuteReader
Do While rdr.Read
Console.WriteLine(rdr("DB1_Text") & " | " & rdr("DB2_Text"))
Loop
End Using
con.Close()
End Using
...产生
value from DB1 | value from DB2
关于mysql - 如何在 Visual Basic 中连接两个或多个数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26047864/