powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / непонятный глюк с "String or binary data would be truncated"
16 сообщений из 16, страница 1 из 1
непонятный глюк с "String or binary data would be truncated"
    #39637612
Just_Serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, доброго дня!

Столкнулся с непонятным глюком.
Пытаюсь вставить в некое поле таблицы наименование другой таблицы:

Код: sql
1.
2.
3.
insert into <таблица>
	select sysobjects.name
                 ...



В результате возникает ошибка "String or binary data would be truncated."
Но весь прикол в том, что длина имени таблицы (строки, которую вставляю) - всего 20 символов, а длина поля таблицы, куда пытаюсь вставить - 35 символов.

Сделал, вот так и "прокатило":
Код: sql
1.
2.
3.
insert into <таблица>
	select LEFT(sysobjects.name, 35)
                 ...



Т.е., получается обрезал значение длиной 20 символов до 35 символов ))))))
select LEN(sysobjects.name) возвращает 20.

Как вообще такое может быть?
Может, кто-то сталкивался с подобным?
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637614
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Just_Serg,

а пробелы? Чудес не бывает.
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637618
Just_Serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав КолосовJust_Serg,

а пробелы? Чудес не бывает.

Вот я про тоже, что не бывает чудес. Может, кто с таким сталкивался... Кстати, на другом сервере такой глюк не наблюдается - все отработало корректно.
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637624
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Just_Serg,

len(вставляемое значение+'a')?
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637629
Just_Serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав КолосовJust_Serg,

len(вставляемое значение+'a')?

21
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637634
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А на таблице, поди, триггер?
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637638
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<таблица>.<field> покажите реально какой тип данных у вас, случаем не varchar(35) ?
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637645
Just_Serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One<таблица>.<field> покажите реально какой тип данных у вас, случаем не varchar(35) ?

да, именно varchar(35)
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637647
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а sysobjects.name тип sysname
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637648
Just_Serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей АлексеевичА на таблице, поди, триггер?

Нет, триггера нет
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637650
Just_Serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneа sysobjects.name тип sysname

Т.е., нужно перед вставкой привести к типу varchar?
Странно, что все это работало уже десяток лет и вдруг сломалось.
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637655
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
переносили базу на другой сервер с другим collation?
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637657
Just_Serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneпереносили базу на другой сервер с другим collation?

давно никаких телодвижений с базами не было.

Код: sql
1.
... CAST(sysobjects.name as varchar) ...


помогло

т.е. получается, что проверке перед вставкой SQL Server считает что LEN(sysobjects.name) != LEN(CAST(sysobjects.name as varchar))
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637659
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
потому что sysname = nvarchar(128) и у вас есть объекты с именами в юникоде, для обычных английских наименований будет всё равно
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637664
Just_Serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneпотому что sysname = nvarchar(128) и у вас есть объекты с именами в юникоде, для обычных английских наименований будет всё равно

Спасибо большое!
...
Рейтинг: 0 / 0
непонятный глюк с "String or binary data would be truncated"
    #39637680
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneпотому что sysname = nvarchar(128) и у вас есть объекты с именами в юникоде, для обычных английских наименований будет всё равноНе смущает, что https://docs.microsoft.com/en-us/sql/t-sql/data-types/nchar-and-nvarchar-transact-sql?view=sql-server-2017 Character data types that are either fixed-length, nchar, or variable-length, nvarchar, Unicode data and use the UNICODE UCS-2 character set. https://docs.microsoft.com/en-us/sql/t-sql/data-types/nchar-and-nvarchar-transact-sql?view=sql-server-2017 nvarchar [ ( n | max ) ]
Variable-length Unicode string data. n defines the string length ?
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / непонятный глюк с "String or binary data would be truncated"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]