あなたにはいくつかの問題がありますが、最も基本的な問題は、これをまったく行うべきではないということです。常に計算できる値を保存し、同期を維持しようとすることは、基本的な設計上の欠陥です。
さて、コード自体に。あなたは
SELECT SUM(VALUE) into product
INTOのターゲットは、宣言された変数である必要があります。列名に..を選択しようとしているようです。
ローカル変数に列名を区別するために名前を付ける必要があります。したがって、
の代わりにDECLARE
value number;
amount number;
total number;
持っている必要があります
DECLARE
v_value number;
v_amount number;
v_total number;
逆に、テーブルと列の標準的な命名規則について考える必要があります。列には、
最後に、テーブルを知らずにコーディングの変更を推奨することは困難です。あなたはそれらについて漠然とした説明をしましたが、すべてをテーブルに置く方が良いでしょう。 minimum-reproducible-example を参照してください