sql >> Database teknologi >  >> RDS >> Oracle

hvordan man ændrer afgrænseren i sqlplus i oracle 11g

Der er ikke noget galt med syntaksen for din trigger. Jeg kan køre det i mit (vanilla) SQL*Plus-miljø:

SQL> CREATE OR REPLACE TRIGGER test_trigger
  2  BEFORE INSERT ON test
  3  REFERENCING NEW AS NEW FOR EACH ROW
  4  BEGIN
  5  SELECT test_sequence.nextval INTO :NEW.ID FROM dual;
  6  END;
  7  /

Trigger created.

SQL>

Og se! udløseren virker:

SQL> insert into test (col1) values ('Simples!')
  2  /

1 row created.

SQL> select * from test
  2  /

        ID COL1
---------- ------------
         1 Simples!

SQL>

Det eneste, jeg kan tænke på, er, at du har nogle tomme linjer i koden, som du skriver. Hvis dette er situationen, kan du tilsidesætte standardadfærden med denne SQL*Plus-kommando:

SQL>  set sqlblanklines on


  1. Sådan aktiveres komprimering på en eksisterende tabel i SQL Server (T-SQL)

  2. Oprettelse af ny kolonne med rækker flyttet op i MySql

  3. PostgreSQL UUID-type ydeevne

  4. Kør Oracle-importkommando fra Java, og se konsoloutput