versipellis

Basic Setup of Oracle Database for Versipellis

  1. Start an Oracle Database Docker container

    docker run --name my-oracle -p 1521:1521 -e ORACLE_RANDOM_PASSWORD=yes \
           -e APP_USER=larry -e APP_USER_PASSWORD=woof \
           --detach gvenzl/oracle-free:slim-faststart
    
  2. Connect to Oracle Database

    docker exec -it my-oracle sqlplus larry/woof@FREEPDB1
    
  3. Create a new table 12

    CREATE TABLE IF NOT EXISTS input_data (
        id        NUMBER       GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
        name      VARCHAR2(50) NOT NULL UNIQUE,
        last_seen TIMESTAMP    WITH TIME ZONE,
        rand_key  RAW(16)      DEFAULT UUID()
    );
    

    Optional check:

    DESCRIBE input_data;
    
  4. Insert rows into the table

    INSERT INTO input_data (name, last_seen) VALUES
        ('Alice', SYSTIMESTAMP - DBMS_RANDOM.VALUE(0, 365) * INTERVAL '1' DAY),
        ('Bob',   SYSTIMESTAMP - DBMS_RANDOM.VALUE(0, 365) * INTERVAL '1' DAY),
        ('Carol', SYSTIMESTAMP - DBMS_RANDOM.VALUE(0, 365) * INTERVAL '1' DAY),
        ('Dave',  SYSTIMESTAMP - DBMS_RANDOM.VALUE(0, 365) * INTERVAL '1' DAY),
        ('Eve',   SYSTIMESTAMP - DBMS_RANDOM.VALUE(0, 365) * INTERVAL '1' DAY);
    COMMIT;
    

    Optional check:

    SELECT * FROM input_data;
    
  5. Exit

    EXIT
    
  1. The IF NOT EXISTS syntax is supported since Oracle Database 19c (backported from 23ai in Release Update 19.28

  2. The UUID() function was introduced in Oracle Database 23ai