,VS2008中用sql语句来更新数据库中一条数据有关问题(vc6.0能运行通过)
在线等,VS2008中用sql语句来更新数据库中一条数据问题(vc6.0能运行通过)
本人用一条SQL语句来更新一条数据,结果显示SQL命令未正确结束,小问题,望高手指点。
sql.Format(_T("update error_mtthermal_tab set MACHINETOOL_NAME='%s',")
_T("THERMAL_NAME='%s',")
_T("ERROR_THERMAL_X='%f',")
_T("ERROR_THERMAL_Y='%f',")
_T("ERROR_THERMAL_Z='%f',")
_T("ERROR_THERMAL_A='%f',")
_T("ERROR_THERMAL_B='%f'")
_T("where MACHINETOOL_ID=%s"),MachineToolName,ThermalName, mtthermalx, mtthermaly, mtthermalz,mtthermala, mtthermalb,MachineToolID);
TRACE(sql);
m_pDB->ExecuteSQL(sql);
去掉_T()在VC6.0中能运行通过。
------解决方案--------------------
T("where MACHINETOOL_ID=%s"),MachineToolName,ThermalName, mtthermalx, mtthermaly, mtthermalz,mtthermala, mtthermalb,MachineToolID);
这一句当中应该写成_T("where MACHINETOOL_ID='%s'")
本人用一条SQL语句来更新一条数据,结果显示SQL命令未正确结束,小问题,望高手指点。
sql.Format(_T("update error_mtthermal_tab set MACHINETOOL_NAME='%s',")
_T("THERMAL_NAME='%s',")
_T("ERROR_THERMAL_X='%f',")
_T("ERROR_THERMAL_Y='%f',")
_T("ERROR_THERMAL_Z='%f',")
_T("ERROR_THERMAL_A='%f',")
_T("ERROR_THERMAL_B='%f'")
_T("where MACHINETOOL_ID=%s"),MachineToolName,ThermalName, mtthermalx, mtthermaly, mtthermalz,mtthermala, mtthermalb,MachineToolID);
TRACE(sql);
m_pDB->ExecuteSQL(sql);
去掉_T()在VC6.0中能运行通过。
------解决方案--------------------
T("where MACHINETOOL_ID=%s"),MachineToolName,ThermalName, mtthermalx, mtthermaly, mtthermalz,mtthermala, mtthermalb,MachineToolID);
这一句当中应该写成_T("where MACHINETOOL_ID='%s'")