VC+SQL的UPDATE异常,大家帮帮忙,多谢
VC+SQL的UPDATE错误,大家帮帮忙,谢谢!
void CCMANAGE::OnUpdata()
{
// TODO: Add your control notification handler code here
CString sSQL;
CJXGLApp* pApp = (CJXGLApp*)AfxGetApp();
UpdateData(TRUE);
try
{
sSQL.Format("update Course set CNAME = %s,TNO = %s,CREDIT = %s where CNO = '%s';",m_cname,m_tno,m_credit);
pApp->db.pConn->Execute((_bstr_t)sSQL,NULL,adCmdText);
m_list.SetItemText(gl_row,1UL,m_cname);
m_list.SetItemText(gl_row,2UL,m_tno);
m_list.SetItemText(gl_row,3UL,m_credit);
AfxMessageBox("修改成功!");
}
catch(...)
{
AfxMessageBox("修改失败!");
}
}
------解决方案--------------------
update Course set CNAME = \'%s\',TNO = \'%s\',CREDIT =\'%s\' where CNO = \'%s\'
------解决方案--------------------
你跟踪一下,把生成的sql拿来一看不就知道啦?
------解决方案--------------------
sSQL.Format("update Course set CNAME = ‘%s’,TNO = ‘%s’,CREDIT = ‘%s’ where CNO = '%s';",m_cname,m_tno,m_credit);
这样在跟踪一下看看
------解决方案--------------------
调试打印出SQL语句,在sql analyzer里执行测试是否正确
------解决方案--------------------
SQL语句错了,加“[ ]”试试。
void CCMANAGE::OnUpdata()
{
// TODO: Add your control notification handler code here
CString sSQL;
CJXGLApp* pApp = (CJXGLApp*)AfxGetApp();
UpdateData(TRUE);
try
{
sSQL.Format("update Course set CNAME = %s,TNO = %s,CREDIT = %s where CNO = '%s';",m_cname,m_tno,m_credit);
pApp->db.pConn->Execute((_bstr_t)sSQL,NULL,adCmdText);
m_list.SetItemText(gl_row,1UL,m_cname);
m_list.SetItemText(gl_row,2UL,m_tno);
m_list.SetItemText(gl_row,3UL,m_credit);
AfxMessageBox("修改成功!");
}
catch(...)
{
AfxMessageBox("修改失败!");
}
}
------解决方案--------------------
update Course set CNAME = \'%s\',TNO = \'%s\',CREDIT =\'%s\' where CNO = \'%s\'
------解决方案--------------------
你跟踪一下,把生成的sql拿来一看不就知道啦?
------解决方案--------------------
sSQL.Format("update Course set CNAME = ‘%s’,TNO = ‘%s’,CREDIT = ‘%s’ where CNO = '%s';",m_cname,m_tno,m_credit);
这样在跟踪一下看看
------解决方案--------------------
调试打印出SQL语句,在sql analyzer里执行测试是否正确
------解决方案--------------------
SQL语句错了,加“[ ]”试试。