0

そこで、このコードを使用して MySQL に接続し、複数のステートメントを実行します。

$connect=@mysql_connect($host,$user,$pass,false,65536) or die("Can't connect");
mysql_select_db($base,$connect);

接続すると、次のようになります。

mysql_query("CREATE TABLE IF NOT EXISTS tablename ...;\nINSERT INTO tablename ...;");

このコードを使用して、上記と同じコード (\n=改行) を含むバックアップ ファイルを実行します。このスクリプトを Web ページ (ホストされたサーバー) で実行すると動作しますが、XAMPP を使用しているローカル コンピューターではエラーが表示されます。

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO tablename' at line 2

私はphp.iniをチェックsafe_mode = Offsql.safe_mode = Offました。

私が見逃しているアイデアはありますか?

4

1 に答える 1

0

PHP のマニュアルによると、mysql_query複数のクエリはサポートされていません。ただし、コメントには、それが可能であると述べている人がいます:

ただし、複数のクエリがサポートされているようです。フラグ 65536 を mysql_connect の 5 パラメーター (client_flags) として渡すだけです。(ソース

一方、マニュアルでは関数に 2 つのパラメーターしか言及されていないため、5 番目のパラメーターが本当にうまくいく場合、3 番目と 4 番目のパラメーターとして何を渡すことになっているのだろうか!

于 2011-09-29T21:32:57.837 に答える