Преобразование типов и оператор CAST стр. 3 |
||
|
Есть одна особенность использования оператора CAST в SQL Server, связанная с преобразованием числа к его строковому представлению. Что произойдет, если число символов в числе превышает размер строки? Например, Следует ожидать, что мы получим сообщение об ошибке. Правильно, вот это сообщение: Arithmetic overflow error converting numeric to data type varchar. («Ошибка арифметического переполнения при преобразовании числа к типу данных VARCHAR».) Естественно, что мы будем ожидать того же сообщения и при выполнении следующего оператора: Но нет. В результате мы получим символ «*» вместо сообщения об ошибке. Мы не беремся судить, с чем это связано, однако, однажды мы столкнулись с проблемой диагностики ошибки в коде, в котором впоследствии выполнялось обратное преобразование к числовому типу. В нашем простейшем примере это будет выглядеть так: Вот тут-то мы и получаем ошибку: Syntax error converting the varchar value '*' to a column of data type int. («Ошибка синтаксиса при преобразовании значения «*» к типу данных INT».)
Примечание:
Функция Transact-SQL CONVERT ведет себя аналогичным образом. |
||
| Мрт в москве |
| Поставка технических газов. Форум о позвоночнике. |
| ckbran.ru |
| Стеллажи книжные |
| Адреса точек розничных продаж. Электронный адрес для заказа товара. |
| dom98.ru |
| Шлагбаумы в уфе |
| Услуги по созданию сайтов, онлайн-конструктор Новости города |
| clevergates.ru |


