@ user1505078 является правильным
В этом C-коде я использую DBSMALLINT-тип DB-Library для поиска в столбце VARCHAR, возвращаемый тип также целочисленный, поэтому мне пришлось заключить% d в одинарные кавычкито есть "% d").Этого было достаточно, чтобы «преобразовать» значение, поскольку все, что идет между кавычками в этом запросе, в любом случае будет CHAR.
DBSMALLINT region_code;
dbbind(dbproc, 1, SMALLBIND, (DBINT)0, (BYTE *)®ion_code); /* Integer */
sybase_error = False;
dbfcmd(dbproc, "insert into <table_name> ");
dbfcmd(dbproc, "select * from <another_table> ");
/* With quotes, the query searches for Chars instead */
dbfcmd(dbproc, "where group_code = '%d' ", region_code); /* Quotes in '%d' */
dbsqlexec(dbproc);
while (dbresults(dbproc) != NO_MORE_RESULTS)
continue;