Невозможно вставить эту строку в столбец. Вставляется только часть строки

66
6

Я использую SQL Server 2008. И я пытаюсь вставить строку в таблицу, но вставлена только часть строки. Я проверил, является ли это инъекцией SQL-инъекций. Как решить или избежать этой проблемы?

insert into tble (col1, col2, col3) 
values (23, 34, "out of 8 works, 5 works are completed");

Вставляется только Out of 8 Works, , 5 works are completed пропущено

спросил(а) 2015-11-30T13:00:00+03:00 4 года, 7 месяцев назад
1
Решение
100

Измените размер col3 в таблице (в зависимости от размера строки). Вы можете изменить его, используя следующий запрос:

alter table tble


alter column col3 nvarchar (100) [null | не ноль]

ответил(а) 2015-11-30T13:22:00+03:00 4 года, 7 месяцев назад
66

Двойные кавычки будут работать только в том случае, если QUOTED_IDENTIFIERS выключен, если вас беспокоит SQL-инъекция, тогда не передавайте строку в INSERT - параметризуйте ее из приложения. Строка может быть усечена, потому что col3 не задан достаточно долго - проверьте это также.

ответил(а) 2015-11-30T13:07:00+03:00 4 года, 7 месяцев назад
39

Попробуй это..

insert into table(col1,col2,col3) values (23,34,'out of 8 works, 5 works are completed');

ответил(а) 2015-11-30T13:06:00+03:00 4 года, 7 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема