Единственное назначение двоеточия -- отделить переменную от одноименного столбца в контексте, где возможна неоднозначность. В присваивании двоеточие никакого смысла не имеет.
Оно может смысл иметь не синтаксический, а визуальный к примеру. Некоторым нравится единообразие в коде это раз, во вторых тот же эксперт по разному разукрашивает :"" и "" :-)
К тому же такой вот блок замечательно работает:
EXECUTE BLOCK AS
DECLARE I INTEGER = 1;
BEGIN
IF (:"I" = 0) THEN
EXIT;
END

