アプリ版:「スタンプのみでお礼する」機能のリリースについて

テーブルを作成し、たとえば“氏名を入力する際に空白にしてはいけない”という
設定にしたいのですが、
 人に聞いたところ、2通りの返事が返って来ました。
プロパティで、値要求をはいとするというのと、入力規則のところにIs Not Nullとするという2つの返事が返って来ました。
この2つにはどういう違いがあるのでしょうか?
また、どっちがいいのでしょうか?

A 回答 (3件)

こんにちわ。

takntさんと同じ事になるんですがちょっと補足・・・

入力規則にis not null を入れて置く事は、値要求”はい”とその下の空文字列の許可”いいえ”(←これはデフォルトで”いいえ”です)とイコールになります。

この3つの関係は

 入力規則  値要求   空文字      null値  空白

  なし    はい   いいえ       ×    ×
  なし    はい   はい        ×    ○
  なし   いいえ   いいえ       ○    ○
  なし   いいえ   はい        ○    ○
 isnotnull  はい   はい        ×    ○
 isnotnull  はい   いいえ       ×    ×
 isnotnull  いいえ   いいえ       ×    ×
 isnotnull  いいえ   はい       ×    ×
  
 となるはず?です。
つまり入力規則にis not null と設定していても値要求を”はい”にして空文字を”はい”に設定すると空白文字の入力はOKになってしまいます。
値要求を”はい”にすると入力規則よりも空文字・・の設定を優先します。
間違っていたらすいません。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
詳しく書いていただきありがとうございます。
本当に勉強になります。

お礼日時:2002/12/03 07:01

すでにみなさんから回答(値要求、入力規則のどちらでもOK)が出ていますが、さらにもうちょっと詳しく。



「値要求」や「空文字列の許可」プロパティは、単に null値や空文字列を禁止するためのものですが、
「入力規則」プロパティを使うと、その他にもいろいろと入力する値に規制をかけられます。(例えば、“OK太郎”という名前は入れられない とか)

その他、「入力規則」なら、ユーザーでエラーメッセージを決められる という利点もあります。

例えば「値要求」で null値に規制をかけておくと、氏名を入力しないでレコードを更新しようとしたときに “フィールドに必要なプロパティが~・・・・” というメッセージが表示されてしまいます。
すると入力者は、「おれ、なんか悪いことした?」と戸惑うことになるかもしれません。

一方、「入力規則」なら、「エラーメッセージ」プロパティに、例えば “氏名は必ず入力してください。” と記述しておけば、「おっと、名前を入れ忘れた。」というように、レコードが更新できない理由をわかってもらえます。

ここで注意すべき点ですが、エラーの判断は、「入力規則」よりも「値要求」や「空文字列の許可」が優先されますので、任意の「エラーメッセージ」を表示させたい場合は、「値要求」を “いいえ” 、「空文字列の許可」を “はい” としておいてください。

ついでに、「入力規則」の記述方法についても補足です。

何も入力されていない場合を規制するなら、
“Is Not Null” (null値でない場合は許可)

空文字列を禁止(わざわざ "" と入力する人はいないかもしれませんが)するなら、
“<>""” (空文字列("")と等しくなければ許可)

氏名の入力ですから、IMEのモードは “かな” になっていると思いますが、全角スペースは文字として認識されてしまいますので、これを規制するなら、
“Not Like " *"” (文字列の始まりが全角スペースでない場合は許可)

上記の全ての条件を合わせる場合は、
“Is Not Null And <>"" And Not Like " *"”
と記述することになります。

一応、それぞれのプロパティについては、HELPで確認しておいてください。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

>“フィールドに必要なプロパティが~・・・・” というメッセージが表示されてしまいます。
すると入力者は、「おれ、なんか悪いことした?」と戸惑うことになるかもしれません。

そうですね~何回も”何か悪いことした?”を経験しちゃいました。(^^ゞ

お礼日時:2002/12/03 07:04

どっちでもいいです。


両方とも 空白のみには できない設定になります。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
御礼が遅くなり済みませんでした。

お礼日時:2002/12/03 07:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!