Hi @Igor Korot
SQLBindParameter() succeeds but SQLExecute() returns SQL_NEED_DATA, it usually indicates that you have an incorrect usage of SQLBindParameter(), either the value size or field size.
Referring from this similar thread: SQLBindParameter and SQLExecute returns SQL_NEED_DATA.
Best regards,
Cosmog
If the answer is the right solution, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".