2014-03-02 1 views
1

2 개의 데이터베이스에 액세스하는 MySQL 쿼리가 있습니다. 파이썬을 사용하여 쿼리를 실행하고 있습니다. 파이썬 MySQL 연결의 문제점은 아래와 같이 한 번에 하나의 데이터베이스에 연결된다는 것입니다.파이썬에서 별도의 데이터베이스에 액세스하는 MySQL 쿼리 실행

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

어떻게 파이썬에 2 개의 데이터베이스에 액세스하는 쿼리를 실행할 수 있습니까?

답변

3

데이터베이스의 이름으로 테이블 이름을 한정 할 수 있습니다. 그렇지 않은 것도

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

참고 : 서버에 연결을 설정할 때 데이터베이스 db1를 지정하지만 다른 데이터베이스 db2에서 테이블을 포함하는 쿼리를 실행하려는 경우 예를 들어, 단순히 그런 짓을 연결을 설정할 때 데이터베이스를 지정해야하는 경우. 데이터베이스를 생략하면 모든 테이블 이름을 데이터베이스 이름으로 한정해야합니다.

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