私は例として、次の文を使用します。異なる結果タイプ
<?php
$link = mysql_connect('127.0.0.1', 'user', 'pass');
mysql_query('SET @a = "test";', $link);
$r = mysql_query('SELECT @a;', $link);
echo mysql_field_type($r,0);
?>
私は、MySQL 5.0でこれを実行すると、出力は「文字列」です。 これをMySQL 5.1で実行すると、出力は "blob"になります。
これはバグですか?または、この動作を変更する設定がありますか?私のextarnalアプリケーションは文字列を期待していて、今この新しい結果型で失敗します。うまくいけば、誰かがこれで私を助けることができます。 5.0ドキュメントによると、理由として
ドキュメントによると、これはあまりにも奇妙ではありません。 – Johan
実際には: http://dev.mysql.com/doc/refman/5.1/en/user-variables.htmlに記載されています。ユーザー変数の値が結果セットで選択されている場合は、その変数に戻りますクライアントを文字列として返します。それで今のように塊ではありません。あなたの回避策は – Marco