Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Преобразование типов



Преобразование типов данных происходит в следующих случаях:

· При перемещении, сравнении или объединении данных одного объекта с данными другого объекта эти данные могут преобразовываться из одного типа в другой.

· При передаче в переменную программы данных из результирующего столбца Transact-SQL, кодов возврата или выходных параметров, эти данные должны преобразовываться из системного типа данных SQL Server в тип данных переменной.

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

Неявное преобразование скрыто от пользователя. MS SQL Server автоматически преобразует данные из одного типа в другой. Например, если тип данных smallint сравнивается с типом int, то перед сравнением тип smallint неявно преобразуется в тип int.

Явное преобразование выполняется с помощью функций CAST и CONVERT.

CAST (выражение AS тип [ (длина) ])

CONVERT (тип [ (длина) ], выражение [, стиль ])или с версии MS SQL SERVER 2012

TRY_CAST (выражение AS тип [ (длина) ])

TRY_CONVERT (тип [ (длина) ], выражение [, стиль ])

Где

выражение – любое допустимое выражение.

тип – целевой тип данных.

длина – указываемое дополнительно целое число, обозначающее длину целевого типа данных. Значение по умолчанию равно 30.

стиль – целочисленное выражение, определяющее, как функция CONVERT преобразует параметр выражение. Если стиль имеет значение NULL, возвращается NULL. Диапазон определяется параметром тип.

Пример преобразования типов:

SELECT * FROM R1

WHERE CAST(SUBSTRING([номер счета], 2, LEN([номер счета])-1) AS INT) LIKE ' %123 '

SELECT * FROM R1

WHERE CONVERT(INT, SUBSTRING([номер счета], 2, LEN([номер счета])-1)) LIKE ' %123 '

SELECT CASE WHEN TRY_CAST('тест' AS float) IS NULL THEN 'Ошибка преобразования' ELSE 'OK' END AS ResultSELECT CASE WHEN TRY_CONVERT(float, 'тест') IS NULL THEN 'Ошибка преобразования' ELSE 'OK' END AS Result




Дата публикования: 2015-09-17; Прочитано: 240 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...