本人用VC + ACCESS做一个应用程序,有一个问题无法解决.
在添加新记录时用以下语句保存信息
m_pRs->PutCollect("Name",_variant_t(m_Name));问题时当本人在编辑该记录时,如果 m_Name 变量是空时,
该语句 m_pRs->PutCollect("Name",_variant_t(m_Name));
就无法将数据库中的Name字段保存为空!请高手帮忙!如何解决该问题????

解决方案 »

  1.   

    如果不为空时你可以写入数据库,则代码应该没有问题,可能是你的数据库有问题,应该m_Name这项允许为空,并且不能为主键
      

  2.   

    可以加入一个判断语句:
    if (m_Name!="") m_pRs->PutCollect("Name",_variant_t(m_Name));
    当变量为空时不添加此项
    当然如楼上所说,你的数据库中该项允许为空,并且不能为主键
      

  3.   

    m_pRs->PutCollect("Name",_variant_t(m_Name));
    这句语句是没有问题的,本人所要问的是,当变量是空的,
    数据库中该记录的字段怎样保存为空。
      

  4.   

    在这里先谢谢各位的帮助!
    可能是我的意思没有表达清楚,让各位理解出错了。
    本人的意思是,当原有的数据记录被调到窗体编辑后,
    保存回去时,在原有的记录中某一字段是有信息的,
    现在编辑后窗体中的变量为空,用jasmineily(小赵) 
    这位老兄的语句不是就对该字段不操作了,无法将该
    字段中的信息保存为空了。
    本有又不想用空格来解决,所以请各位高手帮忙!
      

  5.   

    if (m_Name!="") 
        m_pRs->PutCollect("Name",_variant_t(m_Name));
    else
        m_pRs->PutCollect("Name",_variant_t(_T(" ")));这样写也可以达到目的,但是我不想用空格来代替。
    请各位多多帮忙!!!!
      

  6.   

    up我当初遇到的时候是判断非空再存储,就是jasmineily(小赵)说的那样
      

  7.   

    在添加记录时可以这样做!
    但是,我现在说的是,记录字段中有信息,编辑后该记录字段中的信息不要,
    为空,用以下这句也能修改:if (m_Name!="") 
        m_pRs->PutCollect("Name",_variant_t(m_Name));
    else
        m_pRs->PutCollect("Name",_variant_t(_T(" ")));但是我不想用空格来代替,那样凡是添加后修改过的记录都后有一个空格,
    所以请各位多多帮忙!!!!