各位达人:
能帮我看看这个程序的问题么?
尤其是这句:m_pCommand->CommandText = "SELECT * FROM WGProceNameDable WHERE s_WGProName=ProName ";
// SQL语句
是不是不能这样写呀?
还有就是能够这样返回值么:if(m_pRecordset==NULL)return false;
else return true;bool CheckProc(string ProName)
{
m_pRecordset.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordset->Open("SELECT * FROM WGProceNameDable", // 查询DemoTable表中所有字段
theApp.m_pConnection.GetInterfacePtr(), // 获取库接库的IDispatch指针
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
m_pCommand.CreateInstance(__uuidof(Command));
m_pCommand->ActiveConnection = m_pConnection; // 将库连接赋于它
m_pCommand->CommandText = "SELECT * FROM WGProceNameDable WHERE s_WGProName=ProName ";
// SQL语句
m_pRecordset = m_pCommand->Execute(NULL, NULL,adCmdText); // 执行SQL语句,返回记录集
if(m_pRecordset==NULL)return false;
else return true;}
能帮我看看这个程序的问题么?
尤其是这句:m_pCommand->CommandText = "SELECT * FROM WGProceNameDable WHERE s_WGProName=ProName ";
// SQL语句
是不是不能这样写呀?
还有就是能够这样返回值么:if(m_pRecordset==NULL)return false;
else return true;bool CheckProc(string ProName)
{
m_pRecordset.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordset->Open("SELECT * FROM WGProceNameDable", // 查询DemoTable表中所有字段
theApp.m_pConnection.GetInterfacePtr(), // 获取库接库的IDispatch指针
adOpenDynamic,
adLockOptimistic,
adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
}
m_pCommand.CreateInstance(__uuidof(Command));
m_pCommand->ActiveConnection = m_pConnection; // 将库连接赋于它
m_pCommand->CommandText = "SELECT * FROM WGProceNameDable WHERE s_WGProName=ProName ";
// SQL语句
m_pRecordset = m_pCommand->Execute(NULL, NULL,adCmdText); // 执行SQL语句,返回记录集
if(m_pRecordset==NULL)return false;
else return true;}
这样的方式了,为何还要一个m_pCommand->Execute呢?混乱啊
WHERE s_WGProName= 'ProName' "; 或者应该这样
CString strSql;
strSql.Format("SELECT * FROM WGProceNameDable WHERE s_WGProName='%s'",ProName);m_pCommand->CommandText =strSql; //strcpy(m_pCommand->CommandText, strSql);