2017-03-15 15 views
1

私はこのシンプルなフォームがOrbeonで作成しています。 property.localとserver.xmlをセットアップしても問題ありません。今保存データOrbeonトリガMySQLの

、私は、フォームに記入table orbeon_form_data (img)上のデータを保存した場合。

私は「formularioBD」テーブルにテーブルorbeon_form_dataから情報を移動するために作成します。

delimiter | 
create trigger form_BD before insert 
    on orbeon_form_data 
    for each row begin 
     if new.app = 'prueb3' and new.form = 'formularioBD' then 
     delete from formularioBD where id_documento = new.document_id; 
     if new.deleted = 'N' and new.draft = 'N' then 
      insert into formularioBD set id_documento = new.document_id, 
      set texto2 = new.app; 
      texto3= 
     end if; 
    end if; 
end; 
| 

私はテーブルformularioBDにテーブルorbeon_form_dataから移動することができますが、他の値は移動しません。 mysql> select * from formularioBD;

+------------------------------------------+-------+--------+--------+ 
| id_documento        | texto | texto2 | texto3 | 
+------------------------------------------+-------+--------+--------+ 
| 623b3ff9174d0d9fb04e442c1ea786c4ef6f7098 | NULL | NULL | NULL | 
| ae86d5f7f39635035c6756c22460c2437d1ae837 |  | NULL | NULL | 
| b1235abe875adce346eb2e4c2370ab669534c17b |  | NULL | NULL | 
| a5677881dcda2851d391898b089540b3ef5f308f |  |  | NULL | 
| fa2a25fba728ad5f68bd49c26abcd2f89a61e469 |  | NULL | NULL | 
| 886955802e5131b201b0e27c8c08560c063087a1 |  | NULL | NULL | 
| b3cd78d0267547682f191cdf15d8ab6cc97ae12c |  |  |  | 
| da1a219c2855390f6e77999572079f466201a830 |  |  |  | 
+------------------------------------------+-------+--------+--------+ 

お願いします。

よろしくお願いいたします。私は私のトリガーを更新し、今、私のBDのフォームテーブルにデータを保存 @Avernet

+0

。 MySQLで有効であるか、実際に違うのでしょうか?私は 'texto2 = new.app'設定が動作しないことを驚いて、そしてあなた自身のテーブル内の' NULL'で終わります。あなたが参照している列の 'app'の値は何ですか?その値は正しいですか?NULLとは異なりますか? – avernet

答えて

0

感謝。ここにトリガーがあります:

delimiter | 
create trigger trigger_bd before insert on orbeon_form_data for each row begin 
    if new.app = 'prueb3' and new.form = 'formularioBD' then 
     delete from formularioBD where id_documento = new.document_id; 
     if new.deleted = 'N' and new.draft = 'N' then 
      insert into formularioBD set id_documento = new.document_id, 
       texto = extractValue(new.xml, '/form/section-1/texto'), 
     end if; 
    end if; 
end; 
| 

について`texto3は=`あなたのトリガーに疑わしいこと