簡體   English   中英

Propel 2的問題

[英]Issues with Propel 2

我目前正在測試Propel2。我知道它們不是完全穩定的噴氣機。

我的問題是,我嘗試將數據插入表中。 到現在為止還挺好。

但是我得到這個異常:

http://pastebin.com/LH4Pw5jf

這是用於插入的代碼:

            $db = new CoreCountry();
            try{
                $db->setIdent($ident)
                   ->setIso2($iso2)
                   ->setIso3($iso3)
                   ->setTranslation($translation)
                   ->setId(null)
                   ->save();

這是表的描述:

CREATE TABLE core_country (
    id integer NOT NULL,
    ident character varying(64),
    iso2 character varying(2),
    iso3 character varying(3),
    translation text
);
CREATE SEQUENCE core_country_id_seq
    START WITH 1
    INCREMENT BY 1
    NO MINVALUE
    NO MAXVALUE
    CACHE 1;
ALTER TABLE lab.core_country_id_seq OWNER TO postgres;
ALTER SEQUENCE core_country_id_seq OWNED BY core_country.id;
ALTER TABLE ONLY core_country ALTER COLUMN id SET DEFAULT nextval('core_country_id_seq'::regclass);
ALTER TABLE ONLY core_country ADD CONSTRAINT core_country_ident_key UNIQUE (ident);
ALTER TABLE ONLY core_country ADD CONSTRAINT core_country_iso2_key UNIQUE (iso2);
ALTER TABLE ONLY core_country ADD CONSTRAINT core_country_iso3_key UNIQUE (iso3);
ALTER TABLE ONLY core_country ADD CONSTRAINT core_country_pkey PRIMARY KEY (id);

我刪除了not null語句,但是它是由數據庫自動讀取的。

我還向setId方法中插入了一個空字符串,但返回的結果是不允許您向自動增量字段添加任何內容。

請幫忙。

請始終發布您的schema.xml,以便我們看到您的真實表描述。

錯誤說

FEHLER:  NULL-Wert in Spalte »id« verletzt Not-Null-Constraint

您已在->save()調用之前將id設置為null 因此,很明顯,您不應該傳遞null ,設置正確的值或使其自動遞增並丟棄->setId()調用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM