"空白"の値を''
(空の文字列)として、場合によってはNULL
として保存するPHP/MySQLアプリケーションがあります。空の文字列とMySQLデータベースのNULLを保存していますか?
このような混在形式を使用すると、比較するときに問題が発生する可能性があります。そのため、どちらが優れたストレージメカニズムであるか不思議です。 ''
またはNULL
?これは紛らわしいですが、実際にはいくつかの理由でnullを格納する必要があります
"空白"の値を''
(空の文字列)として、場合によってはNULL
として保存するPHP/MySQLアプリケーションがあります。空の文字列とMySQLデータベースのNULLを保存していますか?
このような混在形式を使用すると、比較するときに問題が発生する可能性があります。そのため、どちらが優れたストレージメカニズムであるか不思議です。 ''
またはNULL
?これは紛らわしいですが、実際にはいくつかの理由でnullを格納する必要があります
:
データベースに書き込むときに、フィールドの内容がない場合、NULLとして保存してはいけませんか? – siliconpi
はい、不明な値または判読不能な値を示す場合、内容はNULLではありません。たとえば、DBに「フル」名を入力した場合、私のミドルネームに使用できる唯一の値はおそらくNULLです。私は、ミドルネームの文字列が ''か ''ローレンスかどうかを知っています。空の文字列を0と同じように考えると、その値が何もなく、「分からない」または「わからない」NULLとなる定義済みの値 – Karl
はい、しかし、たとえばHTMLフォームからデータを取り出す場合ユーザーが入力していない場合、通常は空の文字列が送信されます。これをチェックせずに、HTMLフォームのパラメータを直接使用して更新を作成すると、nullの代わりに空の文字列が挿入されてしまいます。 –
AFAIK、NULLとの比較は、空の文字列との比較よりも高速です。 – Eimantas
http://stackoverflow.com/questions/6638291/standard-use-of-z-instead-of-null-to-represent-missing-data –
その参照のための@Damirありがとうございました!非常に恐ろしい! – siliconpi