Типы данных VARCHAR и VARCHAR2 в Oracle отличаются некоторыми особенностями:
- Происхождение: VARCHAR — стандарт ANSI, а VARCHAR2 — стандарт Oracle. 2
- Максимальный размер: для VARCHAR максимальное количество символов — 4000, а для VARCHAR2 — 32 767 байт. 1
- Обработка пустых строк: для VARCHAR2 понятие пустой строки и NULL — это одно и то же, а для VARCHAR — пустая строка и NULL — разные вещи. 1
- Заполнение пробелов: для данных VARCHAR лишние пробелы дополняются с правой стороны, а для VARCHAR2 — усекаются. 4
Кроме того, преимущество VARCHAR2 в скорости: поиск по нему ведётся быстрее. 1