PHP를 사용하여 MySQL 데이터베이스를 조작 할 때는 종종 MySQLI 확장 기능을 사용하여 데이터베이스에 연결합니다. 그러나 실제 개발 프로세스 중에 데이터베이스 연결 오류가 자주 발생합니다. 연결이 성공했는지 여부를 감지하기 위해 MySQLI :: $ errno를 통해 오류 코드를 얻어 데이터베이스 연결에 문제가 있는지 여부를 결정할 수 있습니다. 이 기사에서는 MySQLI :: $ errno를 통해 MySQLI 연결이 잘못되었는지 판단하는 방법과 오류 코드에 따라 처리하는 방법을 소개합니다.
MySQLI Extension을 사용하여 데이터베이스에 연결할 때 일반적으로 다음 코드를 통해 연결합니다.
$host = 'localhost';
$username = 'root';
$password = '';
$dbname = 'test_db';
$connection = new mysqli($host, $username, $password, $dbname);
그러나 데이터베이스 서비스가 시작되지 않았고, 사용자 이름과 비밀번호가 올바르지 않은 등 다양한 이유로 연결이 실패 할 수 있습니다. 이러한 오류를 포착하여 처리 할 수 있으려면 mysqli :: $ errno를 확인할 수 있습니다.
mysqli :: $ errno는 최신 데이터베이스 작업에 오류 코드를 저장하는 데 사용되는 MySQLI 클래스의 속성입니다. 연결이 성공하면 mysqli :: $ errno는 0이 됩니다. 오류가 발생하면 값은 0이 아닌 오류 코드가되어 다른 오류 유형을 나타냅니다. 이 속성의 가치를 판단함으로써 데이터베이스 연결이 성공했는지 확인할 수 있습니다.
다음은 MySQLI :: $ errno를 사용하여 데이터베이스 연결이 성공하고 출력 관련 오류 정보를 결정하는 방법을 보여주는 샘플 코드입니다.
$host = 'localhost';
$username = 'root';
$password = '';
$dbname = 'test_db';
// 데이터베이스 연결을 만듭니다
$connection = new mysqli($host, $username, $password, $dbname);
// 연결이 성공했는지 확인하십시오
if ($connection->connect_errno) {
echo "데이터베이스에 연결하지 못했습니다,오류 코드:" . $connection->connect_errno . "<br>";
echo "오류 메시지:" . $connection->connect_error;
} else {
echo "데이터베이스 연결이 성공적입니다!";
}
위의 코드에서는 $ connection-> connect_errno를 사용하여 연결에 오류가 있는지 확인했습니다. 오류가 발생하면 프로그램이 오류 코드와 자세한 오류 정보를 출력합니다.
데이터베이스 연결 오류 감지에 mysqli :: $ errno를 사용하는 경우 몇 가지 일반적인 오류 코드가 발생할 수 있습니다. 다음은 몇 가지 일반적인 MySQL 연결 오류 코드입니다.
1045 : 사용자 이름이나 암호가 올바르지 않음을 나타냅니다.
2002 : MySQL 서버에 대한 연결이 시작되지 않았거나 IP 주소가 잘못되었음을 나타냅니다.
1049 : 데이터베이스가 존재하지 않음을 의미합니다.
mysqli :: $ errno를 확인하는 것 외에도 일반적으로 다른 오류 상황을 처리해야합니다. 다른 오류 코드에 따라 개발자는 다른 처리 전략을 선택할 수 있습니다. 예를 들어, 데이터베이스에 존재하지 않는 오류가 발생하면 사용자에게 데이터베이스를 생성하도록 프롬프트 할 수 있습니다. 사용자 이름이나 비밀번호 인 경우 입력 한 데이터베이스 자격 증명을 확인하라는 메시지가 표시됩니다.
$connection = new mysqli($host, $username, $password, $dbname);
if ($connection->connect_errno) {
switch ($connection->connect_errno) {
case 1045:
echo "실수:用户名或密码실수!";
break;
case 2002:
echo "실수:연결할 수 없습니다 MySQL 섬기는 사람!";
break;
case 1049:
echo "실수:데이터베이스가 존재하지 않습니다!";
break;
default:
echo "데이터베이스 연결에 실패했습니다,오류 코드:" . $connection->connect_errno;
}
} else {
echo "데이터베이스 연결이 성공적입니다!";
}
이러한 방식으로 다양한 유형의 데이터베이스 연결 오류를보다 정확하게 캡처하고 해당 신속한 정보를 사용자에게 제공 할 수 있습니다.
mysqli :: $ errno 및 mysqli :: $ connect_errno 속성을 통해 MySQLI 연결이 잘못되었는지 쉽게 결정하고 오류 코드를 얻을 수 있습니다. 실제 개발에서 데이터베이스 연결 오류 처리는 매우 중요하며 문제를 신속하게 찾아서 적절하게 응답 할 수 있습니다. 합리적인 오류 처리를 통해 응용 프로그램의 견고성 및 사용자 경험을 향상시킬 수 있습니다.
이 기사가 MySQLI :: $ errno를 통해 MySQLI 연결이 잘못되었는지 판단하는 방법을 더 잘 이해하고 오류 코드를 사용하여 관련 처리를 수행하는 데 도움이되기를 바랍니다. 실제 응용 프로그램에서 다른 문제가 발생하면 오류 코드에 따라 공식 MySQL 문서를 참조하거나 솔루션을 계속 탐색 할 수 있습니다.