|
AppBuilder中进行直接ODBC API数据库调用访问的基本方法!(10) return strSQL; }
2、参数绑定: bool CCddataSet::Insert(pDB_CDDATA_SET_FIELDS pData, bool bFirstTime /* true */) { RETCODE ReturnCode; CString strSQLString; static FF_DB_CDDATA_SET_FIELDS HostData;
// Prepare the statement and bind the columns once if (bFirstTime) { memset(&HostData,0,sizeof(HostData)); SQLFreeStmt(m_hstmt, SQL_CLOSE); // Close the cursor if any SQLFreeStmt(m_hstmt, SQL_RESET_PARAMS); // Reset the statement handle strSQLString.Format("INSERT INTO CDData (" "NGUANGPAN," "NWENJIAN," "NCLASS," "AWENJIAN," "NSHANGJI," "NSHUXING," "ABEIZHU )" "VALUES (" "?," // nGuangPan "?," // nWenJian "?," // nClass "?," // aWenJian "?," // nShangJi "?," // nShuXing "? )" // aBeiZhu ); // end format
ReturnCode = SQLPrepare(m_hstmt, (UCHAR*)((LPCTSTR)strSQLString),SQL_NTS); if (ReturnCode != SQL_SUCCESS) { return false; }
SQLBindParameter(m_hstmt,1, SQL_PARAM_INPUT, SQL_C_SLONG, SQL_INTEGER, 0, 0,&HostData.m_Nguangpan,0,&HostData.m_NguangpanInd ); SQLBindParameter(m_hstmt, 2,SQL_PARAM_INPUT,SQL_C_SLONG,SQL_INTEGER, 0, 0,&HostData.m_Nwenjian,0, &HostData.m_NwenjianInd ); SQLBindParameter(m_hstmt,3,SQL_PARAM_INPUT, SQL_C_SLONG,SQL_INTEGER, 0, 0,&HostData.m_Nclass,0,&HostData.m_NclassInd ); SQLBindParameter(m_hstmt,4,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_VARCHAR, CDData_aWenJian_SIZE,0,HostData.m_Awenjian,0,&HostData.m_AwenjianInd ); SQLBindParameter(m_hstmt,5,SQL_PARAM_INPUT,SQL_C_SLONG,SQL_INTEGER,0, 0,&HostData.m_Nshangji, 0, &HostData.m_NshangjiInd ); SQLBindParameter(m_hstmt,6,SQL_PARAM_INPUT,SQL_C_SLONG,SQL_INTEGER, 0, 0, &HostData.m_Nshuxing, 0,&HostData.m_NshuxingInd ); SQLBindParameter(m_hstmt, 7,SQL_PARAM_INPUT,SQL_C_CHAR,SQL_VARCHAR,
|