When creating a function, procedure, package, package body, type, type body, trigger or library, it is a good practice replace the existing one to avoid errors. == Noncompliant Code Example [source,sql] ---- CREATE FUNCTION my_function RETURN PLS_INTEGER AS -- Noncompliant BEGIN RETURN 42; END; / ---- == Compliant Solution [source,sql] ---- CREATE OR REPLACE FUNCTION my_function RETURN PLS_INTEGER AS -- Compliant, no error even if the function already exists BEGIN RETURN 42; END; / ---- ifdef::env-github,rspecator-view[] ''' == Implementation Specification (visible only on this page) include::message.adoc[] endif::env-github,rspecator-view[]