sql >> データベース >  >> RDS >> PostgreSQL

更新可能なビューからデータを返すことが機能していませんか?

    あなたはとても近かった;)あなたはNEW.idを更新する必要があるだけです トリガーで。

    CREATE FUNCTION t0ii_person_details() RETURNS trigger AS $$
    DECLARE
      addr  integer;
    BEGIN
      -- Want at least a town to insert anything into table address.
      IF (NEW.town IS NOT NULL) THEN
        INSERT INTO address(street, town)
          VALUES (NEW.street, NEW.town)
          RETURNING id INTO addr;
      ELSE
        addr := NULL;
      END IF;
    
      INSERT INTO person(first_name, family_name, address)
        VALUES (NEW.first_name, NEW.family_name, addr) 
        -- here is the only change I made
        RETURNING id INTO NEW.id;
      RETURN NEW;
    END; $$ LANGUAGE plpgsql SECURITY DEFINER;
    



    1. 特定の列の結果の数を数えて表示します

    2. PHPを使用してJSONを介してHTML要素を送信する方法は?

    3. すべてのページでDBに接続しないようにするためのmySQLとPHPに関する初心者の質問

    4. PLS-00394:フェッチステートメントのINTOリストの値の数が間違っています