1.和数据库无关:我建立了一个窗体把他的FORMSTYLE设置为父窗体,然后再建立了一个窗体,把FORMSTYLE属性设置为字窗体(都是用的单个窗体,不是MDIFORM),这样设置以后问题来了:我电击子窗体上的关闭按钮,窗体也只是最小化而不关闭,而我在程序里面用子窗体的CLOSE方法,程序就报错。请问有什么方法可以解决啊??
2.我的数据库用的是ADO+ACCESS,但是程序执行的时候老是报错:说启动数据库的时候不能把NULL类型转换为STRING类型;但是我的字段只有整形和字符型,没有NULL型啊??郁闷啊!!!

解决方案 »

  1.   

    PS:对于第二点,我把程序COPY到我同事的计算机里,执行又没有报错
      

  2.   

    对1:和MDIFORM 一样,在子Form 中的OnClose 事件中 输入以下代码
      Action:=caFree; 就可以了
      

  3.   

    1.
    close事件里加:action:=cafree;Destroy事件里加:窗口名:=nil;
      

  4.   

    1。那就是MDI窗体;
    2。仔细看看你的程序都看了什么。
      

  5.   

    对2:你在Access中把非主键字段的"允许空字符串"设为"是"试一下
      

  6.   

    to xingyu(海) 
    我试了还是没有用啊!!!
      

  7.   

    不是你的字段是Null
    应该是你的哪个值为空了
      

  8.   

    1、insert2003(高级打字员)的答案正确!
    2、你一定执行了IntToStr();这样当你的数据库中该字段没有值的时候、当然要报错啦!解决办法,如果是整形字段,要设置它的默认值就可以啦!
      

  9.   

    错误是在AdoConnection打开时报错吗,是报什么信息?
      

  10.   

    在子Form 中的OnClose 事件中 输入以下代码
      Action:=caFree; 就可以了
      

  11.   

    1、在OnClose中, Action:=caFree; 
    2、将数据库中的字段允许为空就不报错了!
      

  12.   

    的OnClose事件中加上如下两句话
    Action :=Cafree;
    表单名:=Nil;
    就可以了
      

  13.   

    第二个报的错是:project pmain.exe raised exception class evarianttypecasterror with message 'could not convert variant of type(null) into type(string)'.process stopped.used step or run to continue;
    但是我如果用BDE+PARADOX数据库不会报错
      

  14.   

    NULL是指某个字段值为空,应将ACCESS中设置为允许为空。
      

  15.   

    同意xingyu(海) 的解决方法!