头文件中定义
CString m_RingNum,m_CutMiles,m_SegmentMiles;//与CEDIT控件关联的成员变量CString SqlTemp;
SqlTemp.Format("UPDATE 基环数据 SET 环号=%s WHERE ID=% ld",m_RingNum,m_DataID);
m_pDatabase->Execute(SqlTemp);
SqlTemp.Format("UPDATE 基环数据 SET 切口里程=%s WHERE ID=%ld",m_CutMiles,m_DataID);
m_pDatabase->Execute(SqlTemp);
SqlTemp.Format("UPDATE 基环数据 SET 管片里程=%s WHERE ID=%ld",m_SegmentMiles,m_DataID);
m_pDatabase->Execute(SqlTemp);问题是我在相应的CEDIT控件中输入任何非数字字符后(例如输入"hh88"),进行记录更新时,总是不能更新记录,并且显示提示消息"syntax error(missing operator) in query expression'hh88'.
请教高手如何解决这个问题?
CString m_RingNum,m_CutMiles,m_SegmentMiles;//与CEDIT控件关联的成员变量CString SqlTemp;
SqlTemp.Format("UPDATE 基环数据 SET 环号=%s WHERE ID=% ld",m_RingNum,m_DataID);
m_pDatabase->Execute(SqlTemp);
SqlTemp.Format("UPDATE 基环数据 SET 切口里程=%s WHERE ID=%ld",m_CutMiles,m_DataID);
m_pDatabase->Execute(SqlTemp);
SqlTemp.Format("UPDATE 基环数据 SET 管片里程=%s WHERE ID=%ld",m_SegmentMiles,m_DataID);
m_pDatabase->Execute(SqlTemp);问题是我在相应的CEDIT控件中输入任何非数字字符后(例如输入"hh88"),进行记录更新时,总是不能更新记录,并且显示提示消息"syntax error(missing operator) in query expression'hh88'.
请教高手如何解决这个问题?
另外顺便给你提个建议,不要使用DAO了,使用ODBC或ADO吧。我可是吃过DAO的苦头,再说现在使用DAO的越来越少了。
SqlTemp.Format("UPDATE 基环数据 SET 切口里程=%s WHERE [ID]=%ld",m_CutMiles,m_DataID);