ホームページ >データベース >mysql チュートリアル >「警告: mysql_query(): 3 は有効な MySQL-Link リソースではありません」エラーが表示されるのはなぜですか?
「警告: mysql_query(): 3 は有効な MySQL-Link リソースではありません」が表示されるのはなぜですか?
「警告: 「mysql_query(): 3 は有効な MySQL-Link リソースではありません」エラーは、MySQL 接続リソースを格納するために使用される変数が無効であることを示します。 PHP はリソースを使用して外部オブジェクトを表し、それぞれに一意の整数 ID が割り当てられます。
データベース接続の失敗:
このエラーの一般的な原因は、データベース接続の失敗です。接続が失敗すると、リソースを含む変数が null になり、「指定された変数は有効な MySQL-Link リソースではありません」エラーが発生します。
接続の再利用:
mysql_connect() 関数は、デフォルトでは、新しい接続を作成するのではなく、既存の接続を再利用します。以前の接続が予期せず閉じられた場合、または同じサーバー上で異なるデータベースが使用されている場合、これにより問題が発生する可能性があります。 $new_link パラメータに true を渡すと、mysql_connect() を呼び出すたびに新しい接続を作成できます。
例 (失敗した接続):
<code class="php">$link = mysql_connect('localsoth','baduser','badpass'); // failed connection $result = mysql_query("SELECT 1", $link); // throws error</code>
例 (再利用された接続):
<code class="php">$link1 = mysql_connect('localhost','user','pass'); // resource id 1 $link2 = mysql_connect('localhost','user','pass'); // reuse resource id 1 mysql_close($link2); // closes resource id 1 mysql_query("SELECT 1", $link1); // fails due to closed connection</code>
解決策:
このエラーを解決するには、データベース接続が確立され、接続が完了している間開いたままであることを確認します。スクリプトの実行。接続を途中で閉じることを避け、古い MySQL 拡張機能の代わりに MySQLi 拡張機能または PDO を使用することを検討してください。
以上が「警告: mysql_query(): 3 は有効な MySQL-Link リソースではありません」エラーが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。