我定义了一个如下的存储过程:
CREATE PROCEDURE UpdateSon(Pno in char,Eno out integer,Lno out char)
我是这样调用的,有问题,这个地方该怎样来写?
char* strSQL = new char[200];
int error = 0;
CString itemno;
sprintf(strSQL,"{call UpdateSON('%s',error,itemno)}",m_Btl.ItemNo);
TRY
{
m_Mxl.m_pframetempset.m_pDatabase->ExecuteSQL(strSQL);
}
CATCH(CDBException,e)
{
AfxMessageBox(e->m_strError);
}
END_CATCH
CREATE PROCEDURE UpdateSon(Pno in char,Eno out integer,Lno out char)
我是这样调用的,有问题,这个地方该怎样来写?
char* strSQL = new char[200];
int error = 0;
CString itemno;
sprintf(strSQL,"{call UpdateSON('%s',error,itemno)}",m_Btl.ItemNo);
TRY
{
m_Mxl.m_pframetempset.m_pDatabase->ExecuteSQL(strSQL);
}
CATCH(CDBException,e)
{
AfxMessageBox(e->m_strError);
}
END_CATCH
解决方案 »
- 请一个删除vertor容器元素的例子//为什么删除元素并不是真正删除元素,而是删除什么???
- ATL7.0开发的控件在Windows2003下面注册失败
- 关于IHTMLDocument2接口奇怪的问题,VC6可以,VC2005确不行,麻烦高手来看看
- MicoSoft太过分了:创建可以在线程中调用的组件,Release()就出错了
- 这个错误怎么解决?高手菜鸟都来看!!!
- 新手问题
- 为什么诸多DES加密算法的结果各不相同?求一标准DES加密算法
- 视图指针获得法(不用getdocument())???我来问,你来答!
- 如何动态生成变量名并使用
- 求救!!!!!
- CFrameWnd可以作为子窗口吗?
- 如何在SDK下,取得在一个树形控件中被选中的一项的本文!!用Tree控件是什么消息?
sprintf(strSQL,"begin UpdateSON('%s',error,itemno); end; ", m_Btl.ItemNo);调用存储过程的方法在不同的数据库中是不同的。
而且存储过程输出的结果这么写是传不出来的。
char* strSQL = new char[200];
int error = 0;
CString itemno;
sprintf(strSQL,"{call UpdateSON('%s',%d,%s)}",m_Btl.ItemNo,error,itemno);
出现以下错误:
Syntax error and access violation
看来还是写错了,请大家看看该怎么写?
可以参靠MFC直接使用ODBC API的例子。
http://expert.csdn.net/Expert/topic/1173/1173605.xml?temp=.8254663
http://expert.csdn.net/Expert/topic/1184/1184458.xml?temp=.8587915
也可以用ODatabase,这样错可以传递参数,但好像无法取得返回值。
sprintf(strSQL,"{call UpdateSON('%s','%d','%s')}",m_Btl.ItemNo,error,itemno);
参数都要用引号引起来,原来我也遇到这个问题
我定义了一个如下的存储过程:
CREATE PROCEDURE UpdateSon(Pno in char,Eno out integer,Lno out char)
我是这样调用的:
char* strSQL = new char[150];
int error = 0;
char * itemno= new char[14];
sprintf(strSQL,"{call UpdateSON('%s','%d','%s')}",m_Btl.ItemNo,error,itemno);
TRY
{
m_Mxl.m_pframetempset.m_pDatabase->ExecuteSQL(strSQL);
}
CATCH(CDBException,e)//出错处理
{
AfxMessageBox(e->m_strError);
}
出现了: PLA-00306:调用‘UPDATESON’时参数数量或类型错误
这是怎么回事?我这些语名在哪些地方有问题?