Hola CDj,
creo que lo ideal sería poner el campo descripción como UNIQUE, si realmente no quieres que nunca se repitan, de manera que al hacer la insert de manera habitual captures la excepción y decidas por código qué hacer.
Si se trata de un caso particular o quieres hacerlo con un script sin bloques PL-SQL, entonces puedes hacerlo de la siguiente manera:
Código:
INSERT INTO tabla(id, descripcion) SELECT idNueva, 'desc' FROM DUAL WHERE NOT EXISTS (SELECT 1 FROM tabla WHERE Descripcion = 'desc');
Cita: ... INSERT INTO a VALUES(MAX(id) + 1,...
Esto te podría llegar a dar problemas, utiliza las secuencias.
Un saludo.