Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.142.96.146] |
|
Сообщ.
#1
,
|
|
|
Приветствую всех!
Вопрос такой, как байндить параметры для text и varchar(max), вернее указать максимальный размер стобца. Клиент работает как с MSDE2000, так и SQL Server 2008. Для varchar(max) в принципе разобрался, что-то типо этого: SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_VARCHAR, 0, 0, (VOID*)1, 0, &cbTextSize) или так: SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_VARCHAR, SQL_SS_LENGTH_UNLIMITED, 0, (VOID*)1, 0, &cbTextSize) Но это не прокатывает для MSDE2000, он не поддерживает тип varchar(max). Писал так: SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_LONGVARCHAR, 0, 0, (VOID*)1, 0, &cbTextSize) Вылетает с ошибкой: [Microsoft][ODBC SQL Server Driver]Недопустимое значение точности. Можно в принципе ручками указать: SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_LONGVARCHAR, 2147483647, 0, (VOID*)1, 0, &cbTextSize) Но это будет не комильфо |