Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Проблема с convert из datetime в varchar  [new]
Naile
Member

Откуда: Latvija
Сообщений: 145
На строку из запроса

convert(varchar, payment_date, 104) + ' (m)'

выдается сообщение String or binary data would be truncated.

Как я понимаю, проблема именно в [ + ' (m)' ]
Но почему возникает такая проблема? Я же преобразую datetime в varchar.

convert(varchar, 'ffff') + ' (m)' - такая строка не выдает ошибку.

Заранее спасибо за помощь.
25 ноя 09, 14:55    [7976938]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с convert из datetime в varchar  [new]
Glory
Member

Откуда:
Сообщений: 104760
Проблема в том, что ваш запрос пытается добавить получаемый результат в поле таблицы. Причем размер поля меньше размера полученного вами результата
25 ноя 09, 14:58    [7976968]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с convert из datetime в varchar  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Запрос покажите, только полностью.
25 ноя 09, 14:58    [7976976]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с convert из datetime в varchar  [new]
Naile
Member

Откуда: Latvija
Сообщений: 145
tpg
Запрос покажите, только полностью.

Весь запрос будет сложновато показать - большой. Попробую полноценной часть :

SELECT
CASE
WHEN success_payment = 1 and (select request_statuss from PAYMENTS_bank_request where payment_id = payment_id and request_type in ('1101', '0004')) = 'MANUAL'
THEN convert(varchar, payment_date, 104) + ' (m)'
ELSE convert(varchar, payment_date, 104) END as payment_bank_date
FROM PAYMENTS_bank_card_payment


Попробовала указать set ansi_warnings OFF
- в результате ошибка не выдается, данные выводятся, но и буква m не добавляется.
25 ноя 09, 15:05    [7977039]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с convert из datetime в varchar  [new]
iap
Member

Откуда: Москва
Сообщений: 46975
И какой тип payment_date?
И какая версия сервера?
25 ноя 09, 15:06    [7977045]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с convert из datetime в varchar  [new]
Naile
Member

Откуда: Latvija
Сообщений: 145
Glory
Проблема в том, что ваш запрос пытается добавить получаемый результат в поле таблицы. Причем размер поля меньше размера полученного вами результата


Упс! Огромное спасибо!!!
Я же храню данные во временной таблице! А там указано : payment_bank_date varchar(10)



Еще раз спасибо!!!
25 ноя 09, 15:07    [7977057]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с convert из datetime в varchar  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Naile
Я же храню данные во временной таблице! А там указано : payment_bank_date varchar(10)
И где же это указано у вас в опубликованом запросе?
25 ноя 09, 15:11    [7977090]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с convert из datetime в varchar  [new]
Naile
Member

Откуда: Latvija
Сообщений: 145
tpg
И где же это указано у вас в опубликованом запросе?

Сорри, не указала (ну очень большой запрос). Зато мне на будущее наука - как правильно здесь описывать возникшую проблему.

Всем - спасибо!
25 ноя 09, 15:14    [7977125]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить