Преобразовал поле из nchar в поле nvarchar, но все еще добавляет пробелы при обновлении - PullRequest
0 голосов
/ 22 февраля 2012

Я работаю в C # и у меня есть проблема, которую я не знаю, как решить.

У меня было несколько полей, которые были nchar в SQL Server 2008, и я заметил пробелы в конце, поэтому я преобразовал их в nvarchar в SQL Server. Затем для теста я отредактировал их на стороне сервера sql и удалил пробелы. Все было в порядке, пока я не выпустил обновление из своей формы, а затем вернул их обратно.

Я подумал, у меня должны быть пробелы на моей стороне, поэтому я обрезаю поле перед записью и даже отображаю его с помощью "*" + field + "*" в окне сообщений, просто чтобы быть уверенным, и нет пробелов. Когда я делаю обновление, они вернулись.

Я предполагаю, что это проблема с набором данных, но все они просто заданы как строка. Так как мне избавиться от пробелов? Я пытался обрезать все, и это не имеет значения.

Должен ли я уничтожить таблицу в наборе данных и воссоздать ее? Я не думаю, что мне придется что-то делать, кроме как изменить это на стороне сервера SQL.

Просто примечание, я понимаю, что простое преобразование поля оставит пробелы, но я уже обрезал их по данным. Это происходит на стороне приложения.

1 Ответ

0 голосов
/ 22 февраля 2012

Используете ли вы параметризованный SQL (для вставки и обновления)?

Является ли ваш тип параметра SQL nvarchar?

...