Hi, For binding purpose i'm using the followng query-- "INSERT INTO table_bank (Name,Balance,Withdraw,Address) VALUES (?,?,?,?)"; but when i'm going to bind a 5th parameter like "INSERT INTO b1 (Name,Balance,Withdraw,Address,DateTime) VALUES (?,?,?,?,?)"; i observed- - No compilation error. - Not adding any thing to database even the rest 4 parameters which were adding to database earlier . I just want to know whether is there any insertion limit or any thing i'hv to change with my Query. Also i'hv attached the code stuff as i'm using .Please find the same .txt file. Please let me know soon. Code: // DBApplicationDlg.cpp : implementation file // #include "stdafx.h" #include "DBApplication.h" #include "DBApplicationDlg.h" #include <windows.h> #include <sqlext.h> #define LENGTH 200 #define LENGTH_COL 100 #ifdef _DEBUG #define new DEBUG_NEW #endif ///////////////////////////////////////// ////////////////////////////////////////////Global Declaration ////////////////////////////////Litu SQL Query ................... HENV hEnv = NULL; HDBC hDBC = NULL; HSTMT hStmt = NULL; UCHAR szDSN[SQL_MAX_DSN_LENGTH] = "BankInfo"; UCHAR* szUID = NULL; UCHAR* szPasswd = NULL; UCHAR szSqlStr[250]= "Select * From b1"; UCHAR szSqlStrPre[250]= "INSERT INTO b1 (Name,Balance,Withdraw,Address,DateTime) VALUES (?,?,?,?,?)"; UCHAR szSqlStrSel[250]="SELECT Name FROM b1"; RETCODE retcode; CString date; ////////////////////////////////////////////////////////////////////////Global Declaration End/////////////////////////////Litu // CAboutDlg dialog used for App About class CAboutDlg : public CDialog { public: CAboutDlg(); // Dialog Data enum { IDD = IDD_ABOUTBOX }; protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support // Implementation protected: DECLARE_MESSAGE_MAP() }; CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) { } void CAboutDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); } BEGIN_MESSAGE_MAP(CAboutDlg, CDialog) END_MESSAGE_MAP() // CDBApplicationDlg dialog CDBApplicationDlg::CDBApplicationDlg(CWnd* pParent /*=NULL*/) : CDialog(CDBApplicationDlg::IDD, pParent) { m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); } void CDBApplicationDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); DDX_Control(pDX, IDC_EDIT1, m_name); DDX_Control(pDX, IDC_EDIT2, m_Balance); DDX_Control(pDX, IDC_EDIT3, m_Withdraw); DDX_Control(pDX, IDC_EDIT4, m_Addss); DDX_Control(pDX, IDC_EDIT6, m_date); DDX_Control(pDX, IDC_EDIT5,m_test); DDX_Control(pDX, IDC_LIST1, m_fieldList); } BEGIN_MESSAGE_MAP(CDBApplicationDlg, CDialog) ON_WM_SYSCOMMAND() ON_WM_PAINT() ON_WM_QUERYDRAGICON() //}}AFX_MSG_MAP // ON_EN_CHANGE(IDC_EDIT4, &CDBApplicationDlg::OnEnChangeEdit4) ON_BN_CLICKED(IDC_BUTTON1, &CDBApplicationDlg::OnBnClickedButton1) // ON_EN_CHANGE(IDC_EDIT1, &CDBApplicationDlg::OnEnChangeEdit1) ON_BN_CLICKED(IDC_BUTTON2, &CDBApplicationDlg::OnBnClickedButton2) ON_BN_CLICKED(IDC_BUTTON4, &CDBApplicationDlg::OnBnClickedButton4) ON_BN_CLICKED(IDC_BUTTON3, &CDBApplicationDlg::OnBnClickedButton3) END_MESSAGE_MAP() // CDBApplicationDlg message handlers BOOL CDBApplicationDlg::OnInitDialog() { CDialog::OnInitDialog(); // Add "About..." menu item to system menu. // IDM_ABOUTBOX must be in the system command range. ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX < 0xF000); CMenu* pSysMenu = GetSystemMenu(FALSE); if (pSysMenu != NULL) { CString strAboutMenu; strAboutMenu.LoadString(IDS_ABOUTBOX); if (!strAboutMenu.IsEmpty()) { pSysMenu->AppendMenu(MF_SEPARATOR); pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu); } } // Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon // TODO: Add extra initialization here m_name.SetFocus(); ////////////Litu m_test.ShowWindow(0); int day, month, year; int hour, minute,sec; CTime currentTime = CTime::GetCurrentTime(); day = currentTime.GetDay(); month = currentTime.GetMonth(); year = currentTime.GetYear(); hour = currentTime.GetHour(); minute = currentTime.GetMinute(); sec=currentTime.GetSecond(); //date.Format(" date- %d/%d/%d Time- %d:%d:%d",day,month,year,hour,minute,sec); date = "678"; return TRUE; // return TRUE unless you set the focus to a control } void CDBApplicationDlg::OnSysCommand(UINT nID, LPARAM lParam) { if ((nID & 0xFFF0) == IDM_ABOUTBOX) { CAboutDlg dlgAbout; dlgAbout.DoModal(); } else { CDialog::OnSysCommand(nID, lParam); } } // If you add a minimize button to your dialog, you will need the code below // to draw the icon. For MFC applications using the document/view model, // this is automatically done for you by the framework. void CDBApplicationDlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this); // device context for painting SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0); // Center icon in client rectangle int cxIcon = GetSystemMetrics(SM_CXICON); int cyIcon = GetSystemMetrics(SM_CYICON); CRect rect; GetClientRect(&rect); int x = (rect.Width() - cxIcon + 1) / 2; int y = (rect.Height() - cyIcon + 1) / 2; // Draw the icon dc.DrawIcon(x, y, m_hIcon); } else { CDialog::OnPaint(); } } // The system calls this function to obtain the cursor to display while the user drags // the minimized window. HCURSOR CDBApplicationDlg::OnQueryDragIcon() { return static_cast<HCURSOR>(m_hIcon); } void CDBApplicationDlg::OnBnClickedButton1() { // Allocate memory for ODBC Environment handle SQLAllocEnv (&hEnv); // Allocate memory for the connection handle SQLAllocConnect (hEnv, &hDBC); // Connect to the data source "BankInfo" using userid and password. retcode = SQLConnect (hDBC, szDSN, SQL_NTS, szUID, SQL_NTS, szPasswd, SQL_NTS); if (retcode == SQL_SUCCESS || retcode == SQL_SUCCESS_WITH_INFO) { // Allocate memory for the statement handle retcode = SQLAllocStmt (hDBC, &hStmt); CString nm ,ads,bal,wdr;//,date; m_name.GetWindowText(nm); m_Balance.GetWindowText(bal); m_Withdraw.GetWindowText(wdr); m_Addss.GetWindowText(ads); /*int day, month, year; int hour, minute; CTime currentTime = CTime::GetCurrentTime(); day = currentTime.GetDay(); month = currentTime.GetMonth(); year = currentTime.GetYear(); hour = currentTime.GetHour(); minute = currentTime.GetMinute(); date.Format(" Date- %d/%d/%d Time- %d:%d",day,month,year,hour,minute);*/ CString testvalue ; m_test.GetWindowText(testvalue); TCHAR nme[LENGTH], addss[LENGTH],datetime[LENGTH]; TCHAR blnce[LENGTH],wdrw[LENGTH]; SDWORD cname, cbalnce, cwithdraw,caddress,cdttm; // SDWORD count; retcode = SQLPrepare(hStmt,szSqlStrPre,sizeof(szSqlStrPre));////////////////////Litu prepare //retcode = SQLPrepare(hStmt,szSqlStr,sizeof(szSqlStr)); cname = SQL_NTS; /* null terminated string */ cbalnce = 0; cwithdraw = 0; caddress=SQL_NTS; //cdttm=SQL_DATA_AT_EXEC; retcode = SQLBindParameter(hStmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, LENGTH, 0,nme, 0, &cname); retcode = SQLBindParameter(hStmt, 2, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_INTEGER, LENGTH, 0,blnce, 0, &cbalnce); retcode = SQLBindParameter(hStmt, 3, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_INTEGER, LENGTH, 0,wdrw, 0, &cwithdraw); retcode = SQLBindParameter(hStmt, 4, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, LENGTH, 0,addss, 0, &caddress); retcode = SQLBindParameter(hStmt,4, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, LENGTH, 0,datetime, 0, &cdttm); strcpy_s(nme, nm); cname = strlen(nme); strcpy_s(blnce, bal); cbalnce = strlen(blnce); strcpy_s(wdrw, wdr); cwithdraw = strlen(wdrw); strcpy_s(addss, ads); caddress = strlen(addss); testvalue = date ; strcpy_s(datetime, testvalue); caddress = strlen(datetime); // SQLCHAR query[] = "INSERT INTO b1 VALUES(?,0,1,'test1')";////// retcode = SQLExecDirect(hStmt,szSqlStrPre, SQL_NTS); retcode = SQLExecDirect(hStmt, (SQLCHAR*)"UPDATE b1 SET Name = 'Litu' WHERE Address = 'shd'", SQL_NTS); /////// UPDATE UPDATE UPDATE retcode = SQLExecDirect(hStmt, (SQLCHAR*)"DELETE FROM b1 WHERE withdraw = 9860", SQL_NTS); /////// DELETE...... // Execute the SQL statement handle retcode = SQLExecute (hStmt); // Get row of data from the result set defined above in the statement retcode = SQLFetch (hStmt); // Free the allocated statement handle SQLFreeStmt (hStmt, SQL_DROP); // Disconnect from datasource SQLDisconnect (hDBC); } }