ADO EXTENTSION 绑定 recordset时注意冗余变量问题

由于绑定操作是由宏实现的,ADO EXTENTSION 绑定 recordset时需要注意冗余变量问题 ,不慎将导致记录无法出来。
class  CHasPrpRs :  public  CADORecordBinding
{
    BEGIN_ADO_BINDING(CHasPrpRs)
        ADO_VARIABLE_LENGTH_ENTRY2(
1, adVarChar, m_ch_TenantIndividualID, 
        
sizeof(m_ch_TenantIndividualID), m_ul_TenantIndividualIDStatus, true)
        ADO_VARIABLE_LENGTH_ENTRY2(
2, adVarChar, m_ch_Email, 
        
sizeof(m_ch_Email), m_ul_EmailStatus, true)
        ADO_VARIABLE_LENGTH_ENTRY2(
3, adVarChar, m_ch_TenantIDNumber, 
        
sizeof(m_ch_TenantIDNumber), m_ul_TenantIDNumberStatus, true)
        ADO_VARIABLE_LENGTH_ENTRY2(
4  , adVarChar, m_ch_Name , 
        
sizeof(  m_ch_Name),  m_ul_NameStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
5 , adVarChar, m_ch_Salutation , 
        
sizeof( m_ch_Salutation ),  m_ul_SalutationStatus, true)
        ADO_VARIABLE_LENGTH_ENTRY2(
6  , adVarChar, m_ch_Country , 
        
sizeof( m_ch_Country ),  m_ul_CountryStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
7  , adVarChar, m_ch_Phone , 
        
sizeof( m_ch_Phone ),  m_ul_PhoneStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
8  , adVarChar, m_ch_CellPhone , 
        
sizeof( m_ch_CellPhone ),  m_ul_CellPhoneStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
9  , adVarChar, m_ch_Fax , 
        
sizeof( m_ch_Fax ),  m_ul_FaxStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
10 , adVarChar, m_ch_PHS , 
        
sizeof( m_ch_PHS ),  m_ul_PHSStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
11 , adVarChar, m_ch_MoveInDate , 
        
sizeof( m_ch_MoveInDate ),  m_ul_MoveInDateStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
12 , adVarChar, m_ch_Company , 
        
sizeof( m_ch_Company ),  m_ul_CompanyStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
13 , adVarChar, m_ch_Actived , 
        
sizeof( m_ch_Actived ),  m_ul_Actived , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
14 , adVarChar, m_ch_MemberID , 
        
sizeof( m_ch_MemberID ),  m_ul_MemberIDStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
15 , adVarChar, m_ch_Language , 
        
sizeof( m_ch_Language ),  m_ul_LanguageStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
16 , adVarChar, m_ch_Marriage , 
        
sizeof( m_ch_Marriage ),  m_ul_MarriageStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
17 , adVarChar, m_ch_Occupation , 
        
sizeof( m_ch_Occupation ),  m_ul_OccupationStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
18 , adVarChar, m_ch_newsletter , 
        
sizeof( m_ch_newsletter ),  m_ul_newsletterStatus , true)
        ADO_VARIABLE_LENGTH_ENTRY2(
19 , adVarChar, m_ch_Gender , 
        
sizeof( m_ch_Gender ),  m_ul_GenderStatus , true)
        
        END_ADO_BINDING()
public:
            
//<---------------------------------------------------------------------------Point A
    TCHAR m_ch_TenantIndividualID[20];    //1
    TCHAR m_ch_Email[50];                //2
    TCHAR m_ch_TenantIDNumber[50];        //3
    TCHAR m_ch_Name[150];                //4
    TCHAR m_ch_Salutation[10];            //5
    TCHAR m_ch_Country[50];                //6
    TCHAR m_ch_Phone[50];                //7
    TCHAR m_ch_CellPhone[50];            //8
    TCHAR m_ch_Fax[50];                    //9
    TCHAR m_ch_PHS[50];                    //10
    TCHAR m_ch_MoveInDate[20];//datetime    //11
    TCHAR m_ch_Company[20];                //12
    TCHAR m_ch_Actived[1];                    //13
    TCHAR m_ch_MemberID[20];                //14
    TCHAR m_ch_Language[10];                //15
    TCHAR m_ch_Marriage[10];                //16
    TCHAR m_ch_Occupation[10];            //17
    TCHAR m_ch_newsletter[10];            //18
    TCHAR m_ch_Gender[1];                    //19
//int      m_i_TenantIndividualID;
//<--------------------------------------------------------------------------------------------------------------Point B
    ULONG m_ul_TenantIndividualIDStatus;    //1
    ULONG m_ul_EmailStatus;                    //2
    ULONG m_ul_TenantIDNumberStatus;        //3
    ULONG m_ul_NameStatus;                    //4
    ULONG m_ul_SalutationStatus;            //5
    ULONG m_ul_CountryStatus;                //6
    ULONG m_ul_PhoneStatus;                    //7
    ULONG m_ul_CellPhoneStatus;                //8
    ULONG m_ul_FaxStatus;                    //9
    ULONG m_ul_PHSStatus;                    //10
    ULONG m_ul_MoveInDateStatus; //datetime    //11
    ULONG m_ul_CompanyStatus;                //12
    ULONG m_ul_Actived ;                    //13
    ULONG m_ul_MemberIDStatus;                //14
    ULONG m_ul_LanguageStatus;                //15
    ULONG m_ul_MarriageStatus;                //16
    ULONG m_ul_OccupationStatus;            //17
    ULONG m_ul_newsletterStatus;            //18
    ULONG m_ul_GenderStatus;                //19
    
public:
    inline 
void Init()
    
{
        
//m_i_TenantIndividualID=0;
        memset(m_ch_TenantIndividualID,0,sizeof(m_ch_TenantIndividualID));    //1
        memset(m_ch_Email,0,sizeof(m_ch_Email));                //2
        memset(m_ch_TenantIDNumber,0,sizeof(m_ch_TenantIDNumber));        //3
        memset(m_ch_Name,0,sizeof(m_ch_Name));                //4
        memset(m_ch_Salutation,0,sizeof(m_ch_Salutation));            //5
        memset(m_ch_Country,0,sizeof(m_ch_Country));                //6
        memset(m_ch_Phone,0,sizeof(m_ch_Phone));                //7
        memset(m_ch_CellPhone,0,sizeof(m_ch_CellPhone));            //8
        memset(m_ch_Fax,0,sizeof(m_ch_Fax));                    //9
        memset(m_ch_PHS,0,sizeof(m_ch_PHS));                    //10
        memset(m_ch_MoveInDate,0,sizeof(m_ch_MoveInDate));//datetime    //11
        memset(m_ch_Company,0,sizeof(m_ch_Company));                //12
        memset(m_ch_Actived,0,sizeof(m_ch_Actived));                    //13
        memset(m_ch_MemberID,0,sizeof(m_ch_MemberID));                //14
        memset(m_ch_Language,0,sizeof(m_ch_Language));                //15
        memset(m_ch_Marriage,0,sizeof(m_ch_Marriage));                //16
        memset(m_ch_Occupation,0,sizeof(m_ch_Occupation));            //17
        memset(m_ch_newsletter,0,sizeof(m_ch_newsletter));            //18
        memset(m_ch_Gender,0,sizeof(m_ch_Gender));                    //19
    }

    CHasPrpRs() 
    
{
        Init();
    }
;
    
virtual ~CHasPrpRs() {};
    
}
;
如上代码Point A与Point B之间不能出现冗余变量。否则有可能导致取不到值或者无法显示。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值