How can I bind dtpicker to oracle

Posted on 2004-10-16
Last Modified: 2013-11-20
I want to bind datetimepicker control to oracle database
Question by:vijay_visana
  • 2
  • 2

Expert Comment

ID: 12331526
can you give more information? I can help, but do you need to populate the edit box of the datetime picker with a value from the database?

Author Comment

ID: 12337124
yes I want to poulate editboox of dtpicker from date stored in oracle table as well as save the changed one back to oracle table

Accepted Solution

nabehs earned 500 total points
ID: 12355458
1. In Class View, Right Click, New Class. From the Dialog Combo, select Generic Class, Enter the name CQuery1 and press OK. A new class is created with query1.cpp and query1.h files
2. Open query1.h file
3. Assume that you have the table Users with the following fields
mydate : date

4. Modify the class CQuery1 in query1.h to the following
class CQuery1
    virtual ~CQuery1();

    DBTIMESTAMP m_mydate;

    COLUMN_ENTRY(1, m_mydate)

5. In stdafx.h add the following line:
#include <atldbcli.h>

6. Add the following function to get and save the date

#include "query1.h"
void GetMyDate(CSession& session, CString& strKeyCol, CString& strMyDate);
void SaveMyDate(CSession& session, CString& strKeyCol, CString& strMyDate);

void GetMyDate(CSession& session, CString& strKeyCol, CString& strMyDate)

    CCommand<CAccessor<CQuery1> > rs;

      HRESULT hr;

    CString strQuery;
    strQuery.Format("SELECT mydate FROM mytable WHERE keycolumn = '%s'", LPCTSTR(strKeyCol));
    // without error checking
    hr = rs.Open(session, LPCTSTR(strQuery));
      if(rs.MoveNext() == S_OK)
            COleDateTime dt(rs.m_mydate.year, rs.m_mydate.month,,
            rs.m_mydate.hour, rs.m_mydate.minute, rs.m_mydate.second);
            strMyDate = dt.Format("%m/%d/%Y");


    CoUninitialize( );

void SaveMyDate(CSession& session, CString& strKeyCol, CString& strMyDate)

    CCommand<CNoAccessor, CNoRowset> cmd;

      HRESULT hr;

    CString strQuery;
    strQuery.Format("UPDATE mytable SET mydate = '%s' WHERE keycolumn = '%s'", LPCTSTR(strMyDate), LPCTSTR(strKeyCol));
    // without error checking
    hr = cmd.Open(session, LPCTSTR(strQuery), NULL, NULL, DBGUID_SQL, false);


    CoUninitialize( );

7. add the following data member to the class
CDataSource m_ds;
CSession m_session;

8. Open the connection at program start


    CString strConnectionString = "Provider=MSDAORA.1;Data Source=MyDatabase;User Id=userid;Password=userpassword;";
    // Replace MyDatabase with your database name
    // Replace userid with the user id
    // Replace userpassword with password

    HRESULT hr;

    // without error checking
    hr = m_ds.OpenFromInitializationString(strConnectionString.AllocSysString( ));
    hr = m_session.Open(m_ds);

9. on dialog start fill the datetime picker with the value from the database by calling GetMyDate by passing m_session as the first parameter

10. on lost focus of the datetime picker save the value to the database by calling SaveMyDate by passing m_session as the first parameter

11. On program end, close the session and connection

Author Comment

ID: 12356272
thnx nabehs
I'll try it and let u know about it

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction: Finishing the grid – keyboard support for arrow keys to manoeuvre, entering the numbers.  The PreTranslateMessage function is to be used to intercept and respond to keyboard events. Continuing from the fourth article about sudoku. …
Introduction: The undo support, implementing a stack. Continuing from the eigth article about sudoku.   We need a mechanism to keep track of the digits entered so as to implement an undo mechanism.  This should be a ‘Last In First Out’ collec…
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.

930 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

20 Experts available now in Live!

Get 1:1 Help Now