あなたはおそらくしない 区切り文字を変更する必要があります。
区切り文字は、SQLステートメントがどこで終了するかを示すためにCLIで必要です。これは、CLIが停止するように指示するまで(たとえば、exit
を使用して)、さらに多くのステートメントを読み取り、実行し続けるためです。 またはControl-D)。しかし、実際に読み取るのは文字の流れにすぎません。どういうわけか、あるステートメントがどこで終わり、次のステートメントがどこで始まるかを理解する必要があります。それが区切り文字の機能です。
PHPでは、各関数呼び出しは1つのステートメントを実行します。 1つの関数呼び出しに複数のステートメントを含めることはできないため、それらを区切る方法は必要ありません。ステートメントは文字列全体です。これは、古いmysql_query
にも当てはまります。 また、新しいmysqli_query
およびPDO。もちろん、mysqli_multi_query
もあります 本当に複数のクエリを1つの関数に渡したい場合。
ストアドプロシージャ/トリガー/関数などの場合、複数のステートメントが存在する可能性がありますが、それはMySQL自体によって処理されます(常に;
、 私の知る限り)。 PHPに関する限り、それはまだ1つのステートメントです。
phpMyAdminに表示されている区切り文字の設定は、ステートメントを分割するために使用されている可能性があり、PHPコードで実行されている可能性があります。複数のステートメントで構成されるユーザー入力を受け入れるため、これを行う必要がありますが、関数呼び出しごとに1つのステートメントのみを渡す必要があります。 (これを完全に確認するためにphpMyAdminコードをチェックしていません。)