VC++中ADO方式運算元據庫之有關“datetime”欄位的操作
直接上程式碼:
void CADOConDlg::OnButton1()
{
// TODO: Add your control notification handler code here
HRESULT hr;
CString strSql;
_ConnectionPtr m_pConnection;
_RecordsetPtr m_pRecordset;
try
{
//create the SQL service object
hr = m_pConnection.CreateInstance(__uuidof(Connection));
ASSERT( SUCCEEDED(hr) );
strSql.Format("%s","Provider=SQLOLEDB;server=xxx;database=xxx;UID=xxx;PWD=xxx");
m_pConnection->ConnectionString = (_bstr_t)strSql;
hr = m_pConnection->Open("","","",adConnectUnspecified);
ASSERT( SUCCEEDED(hr) );
//create the record set object for write
hr = m_pRecordset.CreateInstance(__uuidof(Recordset));
ASSERT( SUCCEEDED(hr) );
CString strCurrentTime;
strSql.Format(_T("select * from 。。。='。。' "));
m_pRecordset->raw_Close();
m_pRecordset->CursorLocation = adUseClient;
hr = m_pRecordset->Open((_variant_t)strSql, m_pConnection.GetInterfacePtr(), adOpenKeyset, adLockOptimistic, adCmdText);
SYSTEMTIME sys;
GetLocalTime( &sys );
strCurrentTime.Format(_T("%d-%d-%d %d:%d:%d"),sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute,sys.wSecond);
_variant_t varTime = (LPCTSTR)strCurrentTime;
m_pRecordset->Update("datetime",(_variant_t)(COleDateTime)varTime);
// m_pRecordset->Update("datetime",(_variant_t)(COleDateTime)sys);
//COleDateTime只精確到秒級
//查下MSDN就知道,其實(COleDateTime)強轉的型別可以很多
AfxMessageBox("successful");
CString strTimeGet;
_variant_t varTimeGet;
COleDateTime oleTimeGet;
SYSTEMTIME sysTimeGet;
varTimeGet=m_pRecordset->GetCollect("datetime");
if (varTimeGet.vt!=VT_NULL)
{
//strTimeGet=varTimeGet.bstrVal;//此路不通
oleTimeGet=(COleDateTime)varTimeGet;
VariantTimeToSystemTime(oleTimeGet,&sysTimeGet);
strTimeGet.Format(_T("%d-%d-%d %d:%d:%d"),sysTimeGet.wYear,sysTimeGet.wMonth,sysTimeGet.wDay,
sysTimeGet.wHour,sysTimeGet.wMinute,sysTimeGet.wSecond);
AfxMessageBox(strTimeGet);
}
}
catch (_com_error e)
{
//CWnd::MessageBox(e.ErrorMessage(), "error DB select read!", NULL);
AfxMessageBox(e.Description());
}
}
感謝:http://blog.csdn.net/leeedreadful/article/details/6804366給瞭解決問題的思路。。。
相關文章
- 運算元據庫
- 運算元據庫表
- yii運算元據庫
- Mysqli運算元據庫MySql
- DDL:運算元據庫
- jmeter運算元據庫JMeter
- 使用WordPress中的wpdb類運算元據庫
- ecshop運算元據庫類
- PHP mysqli 運算元據庫PHPMySql
- Go語言運算元據庫及其常規操作Go
- JAVA運算元據庫方式與設計模式應用Java設計模式
- lavavel 中運算元據庫查詢別名
- 一文快速回顧 Java 運算元據庫的方式-JDBCJavaJDBC
- 利用 Sequelize 來運算元據庫
- java 運算元據庫備份Java
- Python運算元據庫(3)Python
- perl協程運算元據庫
- Go語言運算元據庫Go
- 求助 liferay運算元據庫
- C#運算元據庫進行簡單的增加修改操作C#
- 寫一個main程式,運算元據庫的一些操作AI
- Python學習:運算元據庫Python
- Django在Ubuntu下運算元據庫DjangoUbuntu
- go 語言運算元據庫 CRUDGo
- JDBC運算元據庫基本步驟JDBC
- 非常有用的jdbc的運算元據庫JDBC
- 到底應該先操作快取還是先運算元據庫?快取
- [python] 基於Dataset庫運算元據庫Python
- Java中 使用 Math 類運算元據Java
- Android中使用LitePal運算元據庫Android
- 資料庫誤運算元據恢復資料庫
- 肖sir__jmeter之運算元據庫JMeter
- MySQL DML運算元據MySql
- python運算元據Python
- 前端筆記之伺服器&Ajax(中)MySQL基礎操作&PHP運算元據庫&Ajax前端筆記伺服器MySqlPHP
- 教你如何用python運算元據庫mysql!!PythonMySql
- ASP.Net中用DataGrid運算元據庫ASP.NET
- 併發環境下,先運算元據庫還是先操作快取?快取