//執行SQL語句的方法
if(lstrlen(Username_in)>0 && lstrlen(Passwords_in)>0)
{
CString passwords ;
CString cs_sql;
cs_sql.Format(_T("SELECT passwords from NameTable where username ='%s'"),Username_in);
try
{ ///執行select語句
m_set.Open(CRecordset::dynaset,cs_sql);//.GetBuffer(sql.GetLength()// AFX_DB_USE_DEFAULT_TYPE
m_set.GetFieldValue(_T("passwords"),passwords);
///查詢用戶密碼
char *Temp;
//WideCharToMultiByte(CP_ACP,0,varPassword
if(passwords == Passwords_in)
{
AfxMessageBox(_T("密碼正確,熱烈歡迎~~!"));
}
else
{
AfxMessageBox(_T("密碼錯誤"));
}
}
catch(CException *ex)
{
AfxMessageBox(_T("用戶名錯誤"));
}
//注意Open()方法只有執行 Select語句比較好用~!很怪異
//用GetFieldValue()取得結果
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
如果想要 執行 存儲過程 或是 比較複雜的 SQL語句 可以使用以下函數:
CDatabase.ExecuteSQL();
但是 不能得到返回者, 這個是個麻煩~! 但還沒有尋找到好的解決辦法~!