From 0f7a7ec5b076d73596c00927ad510ff67b5c63c7 Mon Sep 17 00:00:00 2001 From: whoover Date: Fri, 27 Mar 2020 08:38:03 -0700 Subject: [PATCH 1/3] Added more descriptive bind parameter details to indicate the number of bind parameters in the statement vs what was passed into the bind Signed-off-by: whoover --- src/odbc_statement.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/odbc_statement.cpp b/src/odbc_statement.cpp index d37e31e..5dac963 100644 --- a/src/odbc_statement.cpp +++ b/src/odbc_statement.cpp @@ -17,6 +17,7 @@ #include #include +#include #include "odbc.h" #include "odbc_connection.h" @@ -303,7 +304,7 @@ Napi::Value ODBCStatement::Bind(const Napi::CallbackInfo& info) { if (data->parameterCount != (SQLSMALLINT)this->napiParameters.Value().Length() || data->parameters == NULL) { std::vector callbackArguments; - Napi::Error error = Napi::Error::New(env, Napi::String::New(env, "[node-odbc] Error in Statement::BindAsyncWorker::Bind: The number of parameters in the prepared statement doesn't match the number of parameters passed to bind.")); + Napi::Error error = Napi::Error::New(env, Napi::String::New(env, "[node-odbc] Error in Statement::BindAsyncWorker::Bind: The number of parameters in the prepared statement " + std::to_string(data->parameterCount) + " doesn't match the number of parameters passed to bind" + std::to_string((SQLSMALLINT)this->napiParameters.Value().Length()) + '.')); callbackArguments.push_back(error.Value()); callback.Call(callbackArguments); From 113e487254cf9c7c293338d02854072dbf741247 Mon Sep 17 00:00:00 2001 From: whoover Date: Fri, 27 Mar 2020 08:41:33 -0700 Subject: [PATCH 2/3] Added missing space Signed-off-by: whoover --- src/odbc_statement.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/odbc_statement.cpp b/src/odbc_statement.cpp index 5dac963..cbebc0e 100644 --- a/src/odbc_statement.cpp +++ b/src/odbc_statement.cpp @@ -304,7 +304,7 @@ Napi::Value ODBCStatement::Bind(const Napi::CallbackInfo& info) { if (data->parameterCount != (SQLSMALLINT)this->napiParameters.Value().Length() || data->parameters == NULL) { std::vector callbackArguments; - Napi::Error error = Napi::Error::New(env, Napi::String::New(env, "[node-odbc] Error in Statement::BindAsyncWorker::Bind: The number of parameters in the prepared statement " + std::to_string(data->parameterCount) + " doesn't match the number of parameters passed to bind" + std::to_string((SQLSMALLINT)this->napiParameters.Value().Length()) + '.')); + Napi::Error error = Napi::Error::New(env, Napi::String::New(env, "[node-odbc] Error in Statement::BindAsyncWorker::Bind: The number of parameters in the prepared statement " + std::to_string(data->parameterCount) + " doesn't match the number of parameters passed to bind " + std::to_string((SQLSMALLINT)this->napiParameters.Value().Length()) + '.')); callbackArguments.push_back(error.Value()); callback.Call(callbackArguments); From fba0fe6e9178b8e1da74e459fc452bd9786ac0cb Mon Sep 17 00:00:00 2001 From: Will Hoover Date: Fri, 27 Mar 2020 09:24:51 -0700 Subject: [PATCH 3/3] Update src/odbc_statement.cpp Co-Authored-By: Kevin Adler Signed-off-by: whoover --- src/odbc_statement.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/odbc_statement.cpp b/src/odbc_statement.cpp index cbebc0e..d645522 100644 --- a/src/odbc_statement.cpp +++ b/src/odbc_statement.cpp @@ -304,7 +304,7 @@ Napi::Value ODBCStatement::Bind(const Napi::CallbackInfo& info) { if (data->parameterCount != (SQLSMALLINT)this->napiParameters.Value().Length() || data->parameters == NULL) { std::vector callbackArguments; - Napi::Error error = Napi::Error::New(env, Napi::String::New(env, "[node-odbc] Error in Statement::BindAsyncWorker::Bind: The number of parameters in the prepared statement " + std::to_string(data->parameterCount) + " doesn't match the number of parameters passed to bind " + std::to_string((SQLSMALLINT)this->napiParameters.Value().Length()) + '.')); + Napi::Error error = Napi::Error::New(env, Napi::String::New(env, "[node-odbc] Error in Statement::BindAsyncWorker::Bind: The number of parameters in the prepared statement (" + std::to_string(data->parameterCount) + ") doesn't match the number of parameters passed to bind (" + std::to_string((SQLSMALLINT)this->napiParameters.Value().Length()) + "}.")); callbackArguments.push_back(error.Value()); callback.Call(callbackArguments);