tblobfield(page2_query.parameters.parambyname('d_note')).LoadFromFile(extractfiledir(application.ExeName)+'\note.txt');
或者
(page2_query.parameters.parambyname('d_note') AS TBlobField).LoadFromFile(extractfiledir(application.ExeName)+'\note.txt');
问题是不是d_note的类型不对呢?

解决方案 »

  1.   

    d_note 是 access 的备注类型啊
      

  2.   

    改成tblobfield(page2_query.parameters.parambyname('d_note').AsString).LoadFromFile(extractfiledir(application.ExeName)+'\note.txt');试试
    或者直接用blob字段的fieldname.LoadFromFile(extractfiledir(application.ExeName)
    就可以了,我用过的,好用。
      

  3.   

    TO:icehill()
    lovewangj(lllll)的第二中方法我刚刚用过,但你的我没有用,如果lovewangj(lllll)的不行的话,我建议你在“\note.txt”这里留意一下,看是不是少了\或是多了那个\,最好是把
    ShowMessage(extractfiledir(application.ExeName));看看他的格式,该是已经有了一个
    \,那你写"\note.txt",时就多了一个\,如果ShowMessage()出来的不带“\”的话,那你写的那句就少了一个“\”,在C中要写入一个“\” ,要用两个“\”,第一个时解释后面将写入符号,第二个才时真正的路径中的“\”.
      

  4.   

    上面各位说的好象都不是很根本的解决方法,先加点分再说。我现在觉得ado和access结合好象很奇怪;
    譬如:同样的语句insert customer(no,name) value(1,'hanson')用BDE没问题用ADO就总提示
    INSERT INTO 出错!有没有人给个提示?还有上面的blobfield的问题,很困惑
      

  5.   

    偌大一个csdn难道就没人用过这东西?
      

  6.   

    如果你用的是Delphi5的话就很正常了,在Delphi5中使用ADO必须打两个补丁才能用,如果你用Delphi6就不会有Insert的问题了。
      

  7.   

    错误提示比较长,是read address之类的好象老鱼:请问access是怎么支持substring的?