How to create id with AUTO_INCREMENT on Oracle?

In Oracle, you can create a column with AUTO_INCREMENT functionality by using a sequence and a trigger. A sequence is a database object that generates unique integers and can be used to create unique values for the column. A trigger is a database object automatically executed in response to specific events, such as a row inserted into a table.
Here is an example of how to create a table with a column that has AUTO_INCREMENT functionality:

1. Create a sequence:

CREATE SEQUENCE mysequence
START WITH 1
INCREMENT BY 1;

2. Create a table with a column that will be used to store the generated value:

CREATE TABLE mytable (
    id NUMBER(10) PRIMARY KEY,
    ... 
);

3. Create a trigger that will use the sequence to generate a value for the column and insert it into the table:

CREATE TRIGGER mytable_trg
BEFORE INSERT ON mytable
FOR EACH ROW
BEGIN
    :new.id := mysequence.NEXTVAL;
END;

When you insert a new row into the table, the trigger will automatically generate a unique value for the "id" column using the "mysequence" sequence.
INSERT INTO mytable (...)
VALUES (...);

It's worth noting that the above method is not a standard feature of Oracle, and Oracle does not officially support it. However, it's widely used as a workaround.
Also, Oracle 12c and later versions have introduced a new feature called IDENTITY Columns, similar to AUTO_INCREMENT in other databases. You can create an IDENTITY column with the following syntax:

CREATE TABLE mytable (
    id NUMBER(10) GENERATED BY DEFAULT AS IDENTITY,
    ...
);

You can also use the SEQUENCE generator:

CREATE TABLE mytable (
    id NUMBER(10) GENERATED BY DEFAULT AS SEQUENCE mysequence,
    ...
);

This way, you can create an auto-incrementing column, but it's a new feature of Oracle, and it's not supported by all versions.