ALL,SQLBindCol()/SQLFetch() возвращает завершающие пробелы
Я пытаюсь создать программу, которая подключается к MS SQL Server (2012). Программа выполнит несколько запросов SELECT.
При попытке использовать такой код:
ret = SQLBindCol(stmt_tableProp, 25, SQL_C_WCHAR, &comments, 225, &cbComment);
ret = SQLFetch(stmt_tableProp);
значение в "комментарий" переменной будет:
"This is a comment "
, тогда как я ожидаю, что это будет:
"This is a comment"
Предполагаю, что мне нужно установить какой-либо параметр в соединении.
Удивительно, но попытка выполнить этот же код на mySQL и PostgreSQL не дает этого результата. Я получаю то, чего можно ожидать как с unixODBC, так и с iODBC.
Я прав? Если да, то какой и как это сделать?
Да, поле определяется как «char (254)» в инструкции CREATE TABLE(). Так что я должен использовать varchar (254)? – Igor
Я попытался изменить тип поля на varchar (254), но код все равно возвращает строку с конечными пробелами. – Igor
@Igor: Вы удалили значение и повторно вставили значение без пробелов после изменения типа столбца? – erg