>백엔드 개발 >PHP 문제 >PHP를 사용하여 두 데이터베이스를 쿼리하는 방법

PHP를 사용하여 두 데이터베이스를 쿼리하는 방법

PHPz
PHPz원래의
2023-03-31 10:26:471276검색

PHP는 주로 서버 측에서 사용되는 오픈 소스 스크립팅 언어로, 웹 개발에 자주 사용됩니다. 배우기 쉽고, 사용하기 쉽고, 개발 효율성이 높다는 장점이 있어 웹사이트 개발에 널리 사용되고 있습니다. 실제 개발에서는 여러 데이터베이스를 쿼리해야 하는 상황이 발생할 수 있습니다. 이 기사에서는 PHP를 사용하여 두 데이터베이스를 쿼리하는 방법을 소개합니다.

1. 데이터베이스 연결

PHP에서 데이터베이스 연결은 일반적으로 mysqli 확장과 PDO 확장을 사용합니다. 이 기사에서는 데모를 위해 mysqli 확장을 사용합니다.

먼저 각각 db1과 db2라는 두 개의 데이터베이스를 만들고 그 안에 각각 학생 테이블과 교사 테이블을 만듭니다. 두 테이블 모두 ID, 이름, 나이 등과 같은 필드를 가지고 있습니다. 그런 다음 PHP 코드에서 두 데이터베이스를 연결하고 두 테이블의 데이터를 쿼리합니다. 코드는 다음과 같습니다.

//Connect the db1 데이터베이스
$mysqli1 = new mysqli("localhost", "root ", " 비밀번호", "db1");

//db2 데이터베이스에 연결
$mysqli2 = new mysqli("localhost", "root", "Password", "db2");

//쿼리 db1 데이터베이스의 학생 테이블
$sql1 = "SELECT * FROM Student";
$result1 = $mysqli1->query($sql1);
while ($row1 = $result1->fetch_assoc()) {

//输出db1数据库中的student表的数据
echo "db1中student表的数据:" . $row1['id'] . " " . $row1['name'] . " " .$row1['age'].  "<br/>";

}

// db2 데이터베이스의 교사 테이블 쿼리
$sql2 = "SELECT * FROM Teacher";
$result2 = $mysqli2->query($sql2);
while ($row2 = $result2-> ;fetch_assoc()) {

//输出db2数据库中的teacher表的数据
echo "db2中teacher表的数据:" . $row2['id'] . " " . $row2['name'] . " " .$row2['age'].  "<br/>";

}
?>

위 코드에서 먼저 mysqli를 사용하여 db1, db2 두 데이터베이스에 접속을 시도한 후, 각각 한 테이블의 데이터를 쿼리하여 출력한다. 페이지. while 루프는 데이터를 한 줄씩 출력하는 데 사용됩니다.

2. 동일한 연결을 사용하여 두 개의 데이터베이스를 쿼리합니다.

하나의 데이터베이스에 연결한 후 연결 개체를 사용하여 여러 데이터베이스를 쿼리할 수 있습니다. 다른 데이터베이스의 테이블 이름 앞에 데이터베이스 이름을 추가하면 됩니다. 샘플 코드는 다음과 같습니다.

//db1 데이터베이스에 연결
$mysqli = new mysqli("localhost", "root", "password", "db1");

//Query the db1의 학생 테이블
$sql1 = "SELECT * FROM Student";
$result1 = $mysqli->query($sql1);
while ($row1 = $result1->fetch_assoc()) {

//输出db1中的student表的数据
echo "db1中student表的数据:" . $row1['id'] . " " . $row1['name'] . " " .$row1['age']. "<br/>";

}

// db2에서 Teacher 테이블 쿼리
$sql2 = "SELECT * FROM db2.teacher";
$result2 = $mysqli->query($sql2);
while ($row2 = $result2->fetch_assoc ()) {

//输出db2中的teacher表的数据
echo "db2中teacher表的数据:" . $row2['id'] . " " . $row2['name'] . " " .$row2['age']. "<br/>";

}
?>

위 코드에서는 mysqli 연결을 하나만 사용했지만 여러 데이터베이스에 대한 쿼리가 가능합니다. "."을 사용하여 라이브러리 이름과 테이블 이름을 연결하면 됩니다.

3. 요약

이 글에서는 PHP를 사용하여 두 개의 데이터베이스를 쿼리하는 방법을 소개하고 두 가지 방법을 제공합니다. 첫 번째 방법은 mysqli 확장을 사용하여 쿼리를 위한 여러 연결을 설정하는 것이고, 두 번째 방법은 동일한 연결 개체를 사용하여 여러 데이터베이스를 쿼리하는 것입니다. 실제 개발에서는 특정 요구에 따라 적절한 방법을 선택하십시오.

위 내용은 PHP를 사용하여 두 데이터베이스를 쿼리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.