src/PreparedStatement.cpp
branchv_0
changeset 53 cc6ffeba0fe5
parent 48 c83119110c7b
--- 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);
 }