Разница между объявлениями переменных DECLARE и DEFINE заключается в следующем:
- DECLARE. 13 Переменная или функция могут быть объявлены любое количество раз. 1 Объявление сообщает компилятору о существовании переменной с определённым именем и типом данных, но не выделяет для неё память. 3
- DEFINE. 13 Переменная или функция могут быть определены только один раз. 1 Определение создаёт переменную в памяти, резервирует пространство для хранения, назначает начальное значение (если оно предусмотрено) и инициализирует её. 3
Таким образом, DECLARE объявляет существование переменной, а DEFINE не только объявляет, но и выделяет для неё память. 23