--- a/src/PreparedStatement.cpp Sat Oct 24 00:08:19 2020 +0200
+++ b/src/PreparedStatement.cpp Mon Oct 26 00:00:35 2020 +0100
@@ -63,8 +63,8 @@
}
void PreparedStatement::setInteger(int parameterNumber, relpipe::reader::integer_t value) {
- integerParameters.emplace_back(value);
- SQLRETURN result = SQLBindParameter(statement, parameterNumber, SQL_PARAM_INPUT, SQL_C_LONG, SQL_INTEGER, 0, 0, &integerParameters.back(), 0, nullptr);
+ integerParameters.emplace_back(std::to_string(value));
+ SQLRETURN result = SQLBindParameter(statement, parameterNumber, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_BIGINT, 0, 0, (void *) integerParameters.back().c_str(), 0, nullptr);
if (OdbcCommon::isNotSuccessful(result)) throw SqlException(L"Unable to set integer parameter in prepared statement", result, SQL_HANDLE_STMT, statement);
}