В начало

 

3.6. Преобразование типов данных

PL/SQL может выполнять преобразования между различными семействами скалярных типов данных. В пределах одного семейства типы данных можно преобразовывать произвольно, но с учетом ограничений, налагаемых на переменные. Так, переменную типа CHAR(10) нельзя преобразовать в переменную типа VARCHAR2(1), так как не будет хватать места для хранения ее значения. Ограничения точности и масштаба также могут препятствовать преобразованию, например, переменной NUMBER(3,2) в переменную NUMBER(3) и наоборот. В случае нарушения ограничения компилятор PL/SQL не выдаст сообщения об ошибке, однако ошибки могут появиться во время выполнения программы — все зависит от значений преобразуемых переменных.