[Microsoft][SQL Native Client]无效的参数类型,S1105
通过odbc调用sql server 2005的存储过程,调用一直是:[Microsoft][SQL Native Client]无效的参数类型,S1105, 大家帮忙看看是什么问题。
代码如下:
RETCODE ret;
SQLINTEGER char_type_input_code = SQL_NTS;
SQLINTEGER cbEnv = 0;
SQLINTEGER cbCause;
S32 dwNodeID = 0;
S8 szName[256];
S32 iErrCode = ROK;
strcpy(szName, "root");
ret = SQLPrepare(p_stTdatxt->hstmt,(SQLCHAR*) "{?=call p_add_node(?,?)}", SQL_NTS);
ret = SQLBindParameter(p_stTdatxt->hstmt, 1, SQL_PARAM_INPUT, SQL_C_LONG,
SQL_INTEGER, 0, 0, &dwNodeID, 0, &cbEnv);
ret = SQLBindParameter(p_stTdatxt->hstmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR,
SQL_CHAR, TDA_NAME_STANDARD_LENGTH, 0, &>szName, 0, &char_type_input_code);
//前面的一直是正确执行的。
//一直到这里执行语句的时候出错。
ret = SQLExecute(p_stTdatxt->hstmt);
执行结果一直是-1,odbc里面的错误消息提示:[Microsoft][SQL Native Client]无效的参数类型,S1105
存储过程如下:
ALTER PROCEDURE [dbo].[p_add_node]
(
@NODE_PID Int,
@NODE_NAME Varchar(256)
)
AS
INSERT INTO t_testsuit_catalog_treenode
(
node_pid,
node_name
)
VALUES
(
@NODE_PID,
@NODE_NAME
)