0

データベースに空白 ( foo="") を挿入する必要がありますが、そうすると:

bindParam(':foo','',PDO::PARAM_STR);
bindParam(':bar','bang',PDO::PARAM_STR);

テーブルを見るとbar=bangですが、foonull です。私はそれが(スペースではなく空白)ではないことを望みnullます。

(データは SPSS にエクスポートされ、空白は SPSS のものであるため、これを行う必要がありますnull)

私はphp.net/…/pdo.constantsと残りのマニュアルを調べましたが、3 番目のブルームーンの日食中に金星が奇妙に配置されたため、空白が挿入された例しか見当たりません。

編集:php 5.3、mysql 5.1(そしてドライバーのバージョンはわかりません)

4

2 に答える 2

0

PDOは空の文字列を挿入する必要があります(これを確認するには、データベースを直接確認してください)。ただし、PDOは、データをフェッチするときに、指示しない限り、空の文字列をNULLに強制すると思います。

PDOハンドルでこれを試してください。

$pdo->setAttribute(PDO::ATTR_ORACLE_NULLS, PDO::NULL_NATURAL);
于 2011-12-28T23:43:41.050 に答える
0

bindvalue を使ってみましたか?

bindValue( ':foo', '', PDO::PARAM_STR );
bindValue( ':bar', 'bang', PDO::PARAM_STR );
于 2011-12-29T00:03:08.807 に答える