環境:WindowsXP;VC++6.0+sp51。透過odbc直接執行SQL語句CDatabasemydb; CRecordsetmyRecord; CStringstrSQL; CDBVariantcv;try{if(!mydb.IsOpen()) mydb.OpenEx("資料庫連線字串",CDatabase::noOdbcDialog);myRecord.m_pDatabase=&mydb; //直接執行SQL語句, //注意,SQL語句字串一定不能以空格開始 strSQL="SELECT欄位或計算列FROM表WHERE條件"; //strSQL="SELECT欄位或計算列FROM表WHERE條件";//這樣不行,會報錯,查詢語句中沒有欄位 myRecord.Open(CRecordset::snapshot,"需要執行的SQL語句");inti=0; while(!myRecord.IsEOF()){myRecord.MoveFirst(); myRecord.GetFieldValue(i,cv);//獲得第(i+1)列的資料,資料儲存在CDBVariant變數中,不可以直接使用數字0 myRecord.MoveNext();} myRecord.Close(); mydb.Close(); }上文中的myRecord.GetFieldValue(i,cv);語句也可以使用下面的方式實現。 myRecord.GetFieldValue(i,strTemp);體驗新版部落格上一篇:小寶貝四個月了下一篇:寶寶拉肚子了
環境:WindowsXP;VC++6.0+sp51。透過odbc直接執行SQL語句CDatabasemydb; CRecordsetmyRecord; CStringstrSQL; CDBVariantcv;try{if(!mydb.IsOpen()) mydb.OpenEx("資料庫連線字串",CDatabase::noOdbcDialog);myRecord.m_pDatabase=&mydb; //直接執行SQL語句, //注意,SQL語句字串一定不能以空格開始 strSQL="SELECT欄位或計算列FROM表WHERE條件"; //strSQL="SELECT欄位或計算列FROM表WHERE條件";//這樣不行,會報錯,查詢語句中沒有欄位 myRecord.Open(CRecordset::snapshot,"需要執行的SQL語句");inti=0; while(!myRecord.IsEOF()){myRecord.MoveFirst(); myRecord.GetFieldValue(i,cv);//獲得第(i+1)列的資料,資料儲存在CDBVariant變數中,不可以直接使用數字0 myRecord.MoveNext();} myRecord.Close(); mydb.Close(); }上文中的myRecord.GetFieldValue(i,cv);語句也可以使用下面的方式實現。 myRecord.GetFieldValue(i,strTemp);體驗新版部落格上一篇:小寶貝四個月了下一篇:寶寶拉肚子了