[PHP-users 29548] Re: PDO::prepareの疑問符パラメータの挙動に関して
Eishi Kuroda
kuroda @ jetsetrecords.net
2006年 6月 30日 (金) 17:03:10 JST
黒田です。
> > <?php
> > $db = null;
> > $dsn = 'mysql:dbname=test;host=localhost';
> > $user = 'root';
> > $password = 'test';
> > $db = new PDO($dsn, $user, $password);
> > $sql = "select * into outfile ? fields terminated by '\t' from testtable";
> > $stmt = $db->prepare($sql);
> > var_dump($stmt);
> > $stmt->execute(array("/tmp.txt"));
> > ?>
>
> 出力先が /tmp.txt になっていますがこれはここに載せるために書き換えました
> か?
> into outfile は MySQL の動作している User の権限(mysql?)で書き込みます
> ので / ディレクトリには書き込みできないかもしれないです。
> #って、それでも prepare では失敗しないかな…。
すみません。出力先は確かに書き換えてます。
問題はprepareの時点なので、という訳で・・・。
実際はmysqlのユーザのfile権限のあるディレクトリに出力しています。
> あとは PDO のソース見たほうが早いかも…
そうですね・・・。
もう少し調べてみます。
あとは、windows版のバイナリに入っているpdoよりも、
phpをソースからインストールしたFreeBSD上の
sharedで入っているpdoのバージョンが古いとか、そんなことかも知れないと思い、
一応pdoとpdo_mysqlについては最新のものを拾ってきて
再度インストールしてみたのですが、やっぱり無理でした。
どなたか、windows以外の環境で
select * into outfile ? fields from testtable
を実行してみた方はおられないしょうか?
黒田映史
PHP-users メーリングリストの案内