2013-02-18 4 views
1

동일한 구조를 가진 두 개의 mysql 데이터베이스가 있습니다.mysql db에서 다른 데이터베이스로 데이터를 추출

하나의 데이터베이스에서 다른 데이터베이스로 선택한 데이터를 가져오고 싶습니다.

테이블 중 하나는 데이터의 다중 행을 보유하고 있으며 행을 반복하면서 두 번째 db 테이블에 삽입을 시도했지만 두 번째 db에 연결하자마자 첫 번째 테이블에 연결이 끊어짐을 알았습니다 루프가 실패합니다.

어레이를 생성 한 다음 배열의 두 번째 db에서 삽입 루프를 실행하는 것보다 강력하고 올바른 방법입니다.

현재 각 db에 액세스하기 위해 두 가지 다른 로트 크레딧을 사용하고 있습니다.

내가 사용중인 API 기능은 mysql_query와 mysql_insert입니다.

내가해야 할 이유는 내가 서버에 템플릿을 업로드 할 수있는 백엔드 시스템을 가지고 있고 일부는 라이브이고 일부는 그렇지 않다는 것입니다.

두 번째 db에는 사용자 세부 정보와 선택한 템플릿의 세부 정보가 들어 있습니다.

btw 저는 PHP로 작업하고 있습니다.

많은 사전에 감사하고 난 당신이

+0

1. 다른 자격 증명을 사용하여 이러한 데이터베이스에 액세스합니까? 어떤 API (함수 이름)를 사용하고 있습니까? 3. 왜 그러한 전학이 필요합니까? 의견이 아니라 질문을 편집하여 대답하십시오. –

+0

원본에서 데이터베이스를 덤프하고 목적지로 복원하는 것이 훨씬 나을 것입니다. – GordonM

+0

고든, 지금 당장이 작업을 수행해야합니다. 사용자는 db1에서 템플리트를 선택하고 해당 템플리트의 세부 사항을 사용자 세부 사항이 들어있는 db에 푸시해야합니다. db2 –

답변

1

을 사용하는 데이터베이스()는 mysql_query에게 이러한 자원 변수를 사용하여 그들의 자원을 반환이 연결을 만들고 * 함수 :

$connection1 = mysql_connect('host1', 'user1', 'password1'); 
$connection2 = mysql_connect('host2', 'user2', 'password2'); 

... 

$resource = mysql_query('SELECT .....', $connection1); 

... 

mysql_query('INSERT .....', $connection2); 

... 

mysql_close($connection1); 
mysql_close($connection2); 
0
  1. 로 mysql_connect 추가 매개 변수 new_link을 가지고 나에게

    환호 베리를 공급 숟가락을 요청하고 있지 않다 바랍니다.

  2. mysql_connect는 연결 리소스를 반환합니다.
  3. mysql_ * 함수는 리소스 변수를 사용하여 특정 연결에서 호출을 수행 할 수 있습니다.

그래서, 당신이 mysql_로에 $의 link_identifier를 매개 변수를 사용하여 동시에 2 개 연결을 사용할 수 있습니다

관련 문제