mysql - 如何在 Visual Basic 中连接两个或多个数据库?

标签 mysql sql database vb.net ms-access

我需要在 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/

相关文章:

javascript - 如何将mysql值存储到变量中?

sql - 什么时候在关系数据库中使用枚举或小表?

python - MySQL-Python 安装 - 无法构建鸡蛋

database - 在 Pig 中,查找表中条目的补集

MySQL 如何从两个表中选择数据,以便第二个表中的行覆盖第一个表中的行?

mysql - 选择查询中的最后两行

mysql - 返回两个连续结果之间的 "diff"

sql - SQL 中的杂项星形查找字符

mysql - 为什么 SQL 查询不更新特定行

SQL 查询 : How to rearrange the output (Transpose? )