Неявные преобразования типов в SQL
В SQL поддерживается совместимость некоторых типов данных за счет неявного преобразования значений одного типа к значениям другого типа данных (например, при необходимости FLOAT неявно приводится к DOUBLE). Опишем наиболее важные правила совместимости типов, принятые в SQL:1999. Начнем с определения приводимости типов. Тип данных A приводим к типу данных B в том и только в том случае, когда в любом месте, где ожидается значение типа B, может быть использовано значение типа A.
Основные правила приводимости типов состоят в следующем.
- Типы символьных строк. Тип CHARACTER (x) приводим к любому типу CHARACTER (y), если yx. Типы VARCHAR (x) и CHARACTER (x) приводимы к любому типу VARCHAR (y), если yx. Типы CHARACTER (x) и VARCHAR (x) приводимы к любому типу CLOB.
- Типы битовых строк. Тип BIT (x) приводим к любому типу BIT (y), если yx. Типы BIT VARYING (x) и BIT (x) приводимы к любому типу BIT VARYING (y), если yx.
- Типы BLOB. Тип BLOB (x) приводим к любому типу BLOB (y), если yx.
- Типы точных чисел. Тип EN (p1, s1) приводим к любому типу EN (p2, s2), у которого s2s1 и p2 определяется в реализации. Тип EN (p, s) приводим к любому типу приблизительных чисел AN (p1), где p1 определяется в реализации.
- Типы приблизительных чисел. Тип AN (p1) приводим к любому типу AN (p2), если p2p1.
Содержание раздела