PHPプログラミングでは、 mysqli_connect()関数を使用してMySQLデータベースに接続することが非常に一般的です。ただし、実際の開発では、エラー処理は無視できない部分です。特に、データベース接続が失敗した場合、問題をすばやく見つけるために、データベース接続のエラーコードを確認する必要があることがよくあります。それでは、なぜmysqli_connect()を使用した後、mysqli :: $ errnoを確認する必要があるのですか?このエラーコードは私たちに何を伝えることができますか?
MySQLI_Connect()関数は、MySQLデータベースへの接続を確立するために使用されるPHPの関数です。この関数を通じて、MySQLデータベースを使用して、クエリ、挿入、更新、その他の操作を実行できます。 mysqli_connect()関数の基本的な構文は次のとおりです。
$connection = mysqli_connect($host, $username, $password, $database);
接続が成功した場合、 $接続変数にはデータベース接続リソースが含まれます。接続が失敗した場合、 falseを返し、すぐにエラーを処理する必要があります。
mysqli :: $ errnoは、以前のMySQL操作のエラーコードを表すプロパティです。 mysqli_connect()の場合、それが返すエラーコードは、開発者が接続障害の理由を理解するのに役立ちます。 mysqli :: $ errnoの値は、mysqlデータベースによって返されるエラー番号を示す整数です。
データベース接続が失敗した場合、 mysqli :: $ errnoおよびmysqli :: $エラーをさらに確認して、 mysqli_connect()によって返されたfalse値を使用してエラーの原因について詳しく知ることができます。 mysqli :: $ errnoは数値タイプのエラーコードを保存しますが、 mysqli :: $エラーはエラーの特定の説明を保存します。
MySqli :: $ errnoのチェックは、データベース接続のエラー処理に不可欠です。このエラーコードを確認することにより、開発者は以下を行うことができます。
多くの場合、データベース接続の障害の理由は多様です。たとえば、一般的な間違いには以下が含まれます。
誤ったホスト名( $ host )またはIPアドレス
誤ったデータベースのユーザー名またはパスワード
データベースサービスは開始されていないか、アクセスできません
mysqli :: $ errnoを見ると、数値エラーコードを取得できます。これにより、問題がすばやく判断するのに役立ちます。
mysqli :: $エラー文字列としてのエラーは、より詳細なエラー情報を提供します。 mysqli :: $ errnoがチェックされていない場合、開発者は接続障害の特定の理由を逃す可能性があります。 mysqli :: $エラーを見ると、接続に失敗したテキストの説明を取得できます。
たとえば、接続に失敗した場合、次のコードを使用してエラーを確認および印刷できます。
$connection = mysqli_connect($host, $username, $password, $database);
if (mysqli_connect_errno()) {
echo "接続に失敗しました: " . mysqli_connect_error();
}
これにより、接続が失敗したときにすぐに詳細なエラーメッセージを確認できます。
一部のエラーは、さまざまな状況で異なるソリューションをもたらす可能性があります。たとえば、 mysqli :: $ errnoが「1045」を返す場合、パスワードが間違っていることを意味します。 mysqli :: $ errnoが「2002」を返すと、データベースホストに接続できないことを意味します。異なるエラーコードに応じて、開発者はターゲットを絞った方法で問題を解決できます。
一般的なmysqli :: $ errnoエラーコードとその意味は次のとおりです。
1045 :ユーザーの場合は拒否されたアクセス(間違ったユーザー名またはパスワード)
2002 :ローカルMySQLサーバーに接続できません(MySQL Serverに接続できません。データベースサーバーアドレスが間違っているためかもしれません)
2003年:「HOSTNAME」でMySQL Serverに接続できません(HostNameエラーまたはデータベースサービスが開始されていません)
1049 :不明なデータベース(指定されたデータベースは存在しません)
これらのエラーコードは、開発者が問題をより正確に見つけるのに役立ち、不必要なデバッグを回避できます。
以下は、データベース接続エラーを処理するためにmysqli :: $ errnoを確認する方法を示す完全な例です。
<?php
$host = 'm66.net';
$username = 'root';
$password = 'password';
$database = 'example_db';
$connection = mysqli_connect($host, $username, $password, $database);
if (mysqli_connect_errno()) {
echo "接続に失敗しました,エラーコード: " . mysqli_connect_errno() . ",エラーメッセージ: " . mysqli_connect_error();
} else {
echo "データベースに正常に接続します!";
}
?>
この例では、最初にデータベースに接続しようとします。接続が失敗した場合、 mysqli_connect_errno()を介してエラーコードを取得し、表示します。接続が成功した場合、接続のメッセージが成功します。
データベース接続にmysqli_connect()関数を使用する場合、 mysqli :: $ errnoを確認することが非常に重要です。このエラーコードは、データベース接続の障害の特定の理由を特定し、詳細なエラー情報を提供し、異なるエラーコードに基づいて問題を解決するために対応する測定を行うのに役立ちます。したがって、データベース接続操作を実行する場合、開発者はエラー処理に注意を払い、潜在的な接続の問題を無視しないようにする必要があります。