执行MySQL查询,访问Python中的单独数据库

时间:2014-03-02 04:43:38

标签: python mysql python-2.7 mysql-python

我有一个访问2个数据库的MySQL查询。我正在使用Python来执行查询。 Python MySQL连接的问题在于它在任何时候连接到单个数据库,如下所示;

DbConnection = MySQLdb.connect(host='localhost', user='root', passwd='', db='MySQLDatabase')

如何让Python执行访问2个数据库的查询?

1 个答案:

答案 0 :(得分:3)

您可以使用数据库名称限定表名。例如,如果在建立与服务器的连接时指定数据库db1,但是要执行涉及另一个数据库db2中的表的查询,则只需执行以下操作:

conn = MySQLdb.connect(host='localhost', user='root', db='db1')
c = conn.cursor() 
c.execute("SELECT * FROM foo JOIN db2.bar")

另请注意,在设置连接时不需要指定数据库。如果省略数据库,则需要使用数据库名称限定每个表名:

conn = MySQLdb.connect(host='localhost', user='root')
c = conn.cursor()
c.execute("SELECT * FROM db1.foo JOIN db2.bar")