2011-07-22 30 views
0

ファイルをヌルに設定することで、InterBaseのフィールドの空の文字列を防ぐのに使用しましたが、ファイル内のユーザーのタイプとは異なり、その文字列を保存してから削除しますフィールドが空でない文字列をnullに設定し、フィールドをヌルに設定してもその動作が妨げられることはありません。Firebirdのヌルと空の文字列

データベース側から空の文字列を入力しないようにする方法はありますか?

おかげ

答えて

0

あなたはちょうどこのようチェックを追加し、この

CREATE OR ALTER TRIGGER YOUR_TABELE_BIU0 FOR YOUR_TABELE 
ACTIVE BEFORE INSERT OR UPDATE POSITION 0 
AS 
begin 
    IF (CHAR_LENGTH(new.YOURFIELD)=0) THEN 
    exception E_NOT_EMPTY 'field can not be empty'; 
end 
2

のようにトリガーを使用することができます。

CREATE TABLE test (
    f varchar(200), 
    CHECK (f > '') 
) 

んが、NULL値または空の文字列は、このチェックに合格しないだろう。

+1

NULL値を防止するために、NOT NULL制約が必要です。 –

+0

FB 2.5をチェックし、f <> ''はNULL値も除外します –

関連する問題