var
   str:string;begin
   str:='select sj01"人员编号",isnull(sum(sj05),0)"加款总额",count(*)"加款笔数" into #A from s_sj where sj12 like ''%加款'' group by sj01 select sj01"人员编号",isnull(sum(sj05),0)"减款总额",count(*)"减款笔数" into #B from s_sj where sj12 like ''%减款'' group by sj01 select sk01"人员编号",isnull(sum(sk05)/10,0)"消费总额",count(*)"消费笔数" into #C from s_sk group by sk01 select sd01"人员编号",sd14"卡中余额" into #D from s_sd select #D.人员编号,#A.加款总额,isnull(#B.减款总额,0) as 减款总额,isnull(#C.消费总额,0) as 消费总额,#D.卡中余额  into #T from #D inner join #A on #D.人员编号 = #A.人员编号  left join #B on #D.人员编号 = #B.人员编号 left join #C on #D.人员编号=#C.人员编号 select * from #T where 加款总额<>减款总额+消费总额+卡中余额';
   
"string"最多只能含有255个字符,可我的语句中已经超过了255,我该怎么办啊??
有没有比“string”功能更大一点的啊,在线等,大家帮帮忙啊

解决方案 »

  1.   

    "string"最多只能含有255个字符
    ---------------
    请问,这是谁告诉您的?有经过测试吗?procedure TForm1.Button1Click(Sender: TObject);
    var
      Str: String;
    begin
      Str := 'a'; //1个'a'
      Str := Str + Str + Str + Str + Str + Str + Str + Str + Str + Str; //10个'a'
      Str := Str + Str + Str + Str + Str + Str + Str + Str + Str + Str; //100个'a'
      Str := Str + Str + Str + Str + Str + Str + Str + Str + Str + Str; //1000个'a'
      //Str := Str + Str + Str + Str + Str + Str + Str + Str + Str + Str; //10000个'a'
      ShowMessage(Str);
    end;
      

  2.   

    ado的parameters只能传入255字符,不信试试看 :)
      

  3.   

    &#8226; AnsiString 这是P a s c a l缺省的字符串类型,它由AnsiChar 字符组成,其长度没有限制,同时与
    n u l l结束的字符串相兼容。
    &#8226; ShortString 保留该类型是为了向后兼容Delphi 1.0,它的长度限制在2 5 5个字符内。
    &#8226; WideString 功能上类似于A n s i S t r i n g,但它是由Wi d e C h a r字符组成的。
    &#8226; PChar 指向n u l l结束的C h a r字符串的指针,类似于C的char * 或l p s t r类型。
    &#8226; PAnsiChar 指向n u l l结束的A n s i C h a r字符串的指针。
    &#8226; PWideChar 指向n u l l结束的Wi d e C h a r字符串的指针。
    缺省情况下,如果用如下的代码来定义字符串,编译器认为是AnsiString 字符串:
    v a r
    S:string; //编译器认为S的类型是A n s i S t r i n g