Не используйте VARCHAR, используйте VARCHAR2
Также, если вам нужна помощь, попробуйте диалоги CREATE TABLE.
Мы создадим таблицу, PK, последовательность и триггер для вы.
Или, если вы используете базу данных 12 c или выше, вы можете использовать предложение IDENTITY.
Затем нажмите на страницу DDL мастера, и мы покажем вам код, так что вам не нужно будет угадывать, что делает диалог.
CREATE TABLE TABLE1
(
COLUMN1 INTEGER NOT NULL
, COLUMN2 VARCHAR2(20)
, COLUMN3 VARCHAR2(20)
, CONSTRAINT TABLE1_PK PRIMARY KEY
(
COLUMN1
)
ENABLE
);
CREATE SEQUENCE TABLE1_SEQ;
CREATE TRIGGER TABLE1_TRG
BEFORE INSERT ON TABLE1
FOR EACH ROW
BEGIN
<<COLUMN_SEQUENCES>>
BEGIN
IF INSERTING AND :NEW.COLUMN1 IS NULL THEN
SELECT TABLE1_SEQ.NEXTVAL INTO :NEW.COLUMN1 FROM SYS.DUAL;
END IF;
END COLUMN_SEQUENCES;
END;
/