0

私はSQLテーブルを持っていますが、ここにエラーが発生する列があります。null の active_status を持つ新しいレコードをこのテーブルに追加しようとすると、「null でないプロパティが null または一時的な値を参照しています」というエラーが発生します。アイデアはありますか?

active_status character varying(30) NOT NULL DEFAULT 'NEW'::character varying,

編集:新しい単純なテーブルを作成しました。

CREATE TABLE mytable
(
"MyData" character varying(30) NOT NULL DEFAULT 'NEW'::character varying,
CONSTRAINT mytable_pkey PRIMARY KEY ("MyData" )
)
WITH (
 OIDS=FALSE
);
ALTER TABLE mytable
OWNER TO postgres;

文字列を挿入しようとすると、正常に実行されます。

insert into mytable values('ssss');

しかし、null 値を挿入しようとすると、エラーが発生します。

insert into mytable values(null);

ERROR: null value in column "MyData" violates not-null constraint
SQL state: 23502 
4

2 に答える 2

0

最初に NULL 制約を持つ列を作成する必要があります。その列のすべての行をデフォルト値で更新します。Not Null 制約を持つように列を変更します

于 2013-07-29T08:40:19.657 に答える