トリガーとシーケンスを使用して自動インクリメント フィールド (SERIAL など) を作成しようとしています。フィールドでシーケンスまたはシリアル タイプのみを使用できることはわかっていますが、両方の方法 (トリガーとシーケンス) を使用してこれを解決する必要があります。
CREATE SEQUENCE AlimentosSequencia;
CREATE OR REPLACE FUNCTION AlimentoFuncion()
RETURNS "trigger" AS
$BODY$
BEGIN
New.id:=nextval('AlimentosSequencia');
Return NEW;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;
CREATE TRIGGER AlimentosTrigger
BEFORE INSERT
ON alimento
FOR EACH ROW
EXECUTE PROCEDURE AlimentoFuncion();
この組み合わせを試してみましたが、うまくいきません。テーブル alimento には、整数 ID (トリガーとシーケンスによる自動インクリメント) と varchar 名の 2 つのフィールドしかありません。
なにか提案を ?
ありがとう