无论怎么写都是报错。。我想实现vc 调用mysql存储过程,带一个参数,一个实例是带字符串类型参数,一个实例是带整型参数。
大神们看看我的代码:存储过程定义:
CREATE PROCEDURE  (  in rroomnum varchar(30))
 begin
 select *  from client_infor,enter_infor where roomnum=rroomnum and client_infor.id=enter_infor.id;
end令一个:
CREATE PROCEDURE  (  in rroomnum int)
 begin
 select *  from client_infor,enter_infor where roomnum=rroomnum and client_infor.id=enter_infor.id;
end
strSQL.Format("call cdd(%s)",m_roomnum);
mysql_real_query(&mysql,(char*)(LPCTSTR)strSQL,(UINT)strSQL.GetLength())
另一个:
int i=atoi(m_roomnum);
strSQL.Format("call cdd(%d)",i);
mysql_real_query(&mysql,(char*)(LPCTSTR)strSQL,(UINT)strSQL.GetLength())

解决方案 »

  1.   

    存储过程定义:
    CREATE PROCEDURE ( in rroomnum varchar(30))
     begin
     select * from client_infor,enter_infor where roomnum=rroomnum and client_infor.id=enter_infor.id;
    end令一个:
    CREATE PROCEDURE ( in rroomnum int)
     begin
     select * from client_infor,enter_infor where roomnum=rroomnum and client_infor.id=enter_infor.id;
    end
    ---------------
    你的存储过程是不是应该有个名字呢?比如 sp_test1然后
    CString strSql;
    int i;
    i = 11;
    strSql.Format(_T("exec sp_test1 %d"),i);
    然后执行strSql里的语句即可。
    以上是MSSQL的做法,仅供参考!