Olá Sabrina, tudo bem?
A diferença entre as duas cláusulas é que ao utilizar DEFAULT ON NULL SYSDATE o campo nunca ficará NULL mesmo que seja passado NULL no comando insert, e ao utilizar o DEFAULT SYSDATE e realizar o comando insert passando o valor NULL, o campo ficará com o valor NULL.
CREATE TABLE teste (
ID NUMBER(5) INT,
nome VARCHAR2(100) NOT NULL,
data DATE DEFAULT ON NULL SYSDATE);
INSERT INTO teste (ID,nome,data)
VALUES (1,'Danielle',NULL);
SELECT * FROM teste;
ID nome data
-----------------------------------------------
1 Danielle 21-11-2020
CREATE TABLE teste (
ID NUMBER(5) INT,
nome VARCHAR2(100) NOT NULL,
data DATE DEFAULT SYSDATE);
INSERT INTO teste (ID,nome,data)
VALUES (1,'Danielle',NULL);
SELECT * FROM teste;
ID nome data
-----------------------------------------------
1 Danielle NULL
Espero ter ajudado e bons estudos!