• ベストアンサー

accessのNULLと空文字のメリット

accessのNULLと空文字があるメリットはなんでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#223623
noname#223623
回答No.1

「未入力」と「入力するものがない」を区別できる。 たとえば、顧客名簿の電話番号を入力するところを考えてみてください。入力を忘れて登録すると Null になります。でも、顧客が電話番号を教えてくれない場合はどうしましょう。この時は空文字を入れることにします。こうしておくと、値が Null のレコードを抽出すれば、入力忘れがチェックできます。 Null と空文字は見た目で判定できないので、実際には Null を禁止したりします。そうすると、空白に見えるのはすべて空文字になります。つまり、「空白に見えるけどこれは入力忘れじゃないんだな。入力するデータがなかったんだな」とわかります。 これは一例ですが、参考URLも似たようなこと言ってます。

参考URL:
http://kotori.tea-nifty.com/kotoriblog/2005/08/null__8ada.html
ipyodora
質問者

お礼

そういった使い方もできるんですね!回答ありがとうございました。

関連するQ&A

  • 空の文字列とnullと""

    java初心者です。 空の文字列とnullと""の3つの関係がよくわかりません。 TextFieldを使った簡単なプログラムを作りました。そこで、”TextFieldに何も入力されていないこと”を判定する文を書こうと思ったのですが、どう書けばいいのか迷いました。 TextFieldのオブジェクトをtfとして、tf.getText()==""かtf.getText()==nullで大丈夫だと思いましたが、実行してみると、どちらを用いても判定できませんでした。結局、tf.getText().length()==0で判定できました。そこで、リファレンスを見ると、getText()はデフォルトで空の文字列を返すと、書いてありました。 したがって、「""とnullは空の文字列とは異なる」という理解に至ったのですが、では空の文字列とは何なのかという疑問がわいてきました。 また、自分は""とnullの違いもよくわかっていません。""とnullが異なるものである、ということはわかるのですが・・・ 質問をまとめると ・空の文字列とは何なのか? ・空の文字列は""やnullとどう違うのか? です。よろしくお願いします。

    • ベストアンサー
    • Java
  • あるカラムを対象に、Nullと空文字をゼロとして抽出したい

    SQL server 2005についての質問です。 ISNULL関数を使うと、Nullをゼロとして取り出せることがわかりました。 しかし、空文字をゼロとして取り出すことはできないようでした。 Nullと空文字が入り混じったカラムを対象に、Nullだけでなく空文字もゼロとして取り出す関数などはあるでしょうか? 以上、どうぞよろしくお願い致します。

  • 空文字の意義

    どうして、sqlserverには、空文字が存在するのでしょうか? oracleには、空文字は存在せず、すべてnull値として扱ってくれて非常に、わかりやすいです。 他にも、マイクロソフトの製品(Access,やvbの変数)は、空文字を扱っていますが、空文字を扱うとは、何かメリットあるのでしょうか? わたしは、プログラマーですが、うっとうしくてほかなりません。

  • AccessのNULL値とSQL ServerのNULL値で違いはありますか?

    SQL ServerのテーブルをAccessにODBCでリンクを貼っています。 AccessでSQL ServerのNULL項目を表示した際に挙動がおかしくなったので… そこでSQL ServerのテーブルのNULL値を空文字("")にしたら正常になりました。 AccessのNULL値とSQL ServerのNULL値で違いはありますか? ご存知の方がいましたらご教授お願いします。

  • accessで null値のあるデータを追加したい

    もとエクセルのデータで、フィールドにnullのところがあるデータをアクセスに追加したいのですが、 エクセルをアクセスにインポートはできるんですが、 それを追加しようとすると、 追加クエリでエラーが出ます。 どうすればいいのでしょうか? そのフィールドはインデックスはつけてません。 空文字列を はい にしてもだめでした。 access2000 windows2000

  • Accessですでに入っている値をNULLにしたい場合にVBAでどのように書けばよいのでしょうか?

    Access2003とPostgreSQL8を使っています。 AccessをGUI環境としてデータリンクでテーブルを開いています。 Accessでフィールドに対してNULL(空文字でなく)をセットする方法が知りたいです。基本的に入力しなければ良いのですが、すでに入っている値をNULLにしたい場合に手で変更する方法とVBAプログラムで変更する方法が知りたいです。

  • 空文字

    プログラム初心者です 空文字をdbに入れた場合、dbのカラムの値はなしになるのでしょうか? それとも、見えないけどなにか入ってしまうのでしょうか? nameが空文字の場合 $name = $_POST['neme']; UPDATE table SET name=$name WHERE id=1 空文字はNULLを指定した場合と同じ結果になりますか? UPDATE table SET name=NULL WHERE id=1 よろしくお願いします

    • ベストアンサー
    • PHP
  • DB2 の SQL で NULL値を空文字として取得したい。

    2つのテーブルをLEFT OUTER JOIN等によって結合した場合、値がNULLになるカラムが出てくる事がよくあります。 この場合、取得する値をnullではなく空文字(長さ0の文字列)として取得する事は可能でしょうか? IS NULL関数やNVS関数など、他のDBMSで使えた方法がエラーとしてはじかれてしまいました。何か特別なコマンドがあるのかも知れませんが、手元のマニュアルにありません。オンラインマニュアルなどがあればいいのですが、今の所見つかっていません。 どなたかご存知でしたら、教えて頂けないでしょうか。

  • NULLか空文字かの判別(DBの値)

    VB.NETで、Access(mdb)のテーブルから DAOでデータ取得し、取得したレコード毎に値のチェック処理をします。 その値がNULLかどうかは、isDBNULL関数を使用すれば判定できますが、 空文字についてはどう判定すればわかりますでしょうか?? String型にキャストして「= ""」で判定しようとしましたが、 空文字の場合だとString型にキャストする際にエラーが発生します。 家で試せる環境にないので、エラーが出るかどうかわからないのですが String.IsNULLOrEmptyで判定できるのでしょうか? これもString型にキャストする必要がありそうなので、エラーが出るようにも思います・・・。 オブジェクト型の値が空文字かどうか判定する方法を教えていただけないでしょうか。

  • c# nullは空集合として扱かってよいか

     こんにちは、c#初心者です。  現在、ある集合を表すクラスを作っているのですが、そこで集合がある集合に含まれているかどうかを判断するメソッドで、当然nullチェックが必要なのですが、そのときにnullを空集合として扱ってよいかどうかを判断しかねて質問するに至りました(空集合として扱ってよいなら、クラス内部はいろいろと楽なんですが…)。  EventArgsのようにstaticなEmptyフィールドまたはプロパティを用意してもいいのですが、もしnullを空集合として扱えるならそうしなくても良いかなと悩んでいます。  どなたか詳しい方がいらっしゃいましたら教えていただけませんか?