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 ↩