關於SQL語句的執行

//執行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();

但是 不能得到返回者, 這個是個麻煩~! 但還沒有尋找到好的解決辦法~!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章