select * from 表
得到一列5条记录,把第一条给变量S1,第二条给变量S2.......最后一条给S5
该如何写呀?

解决方案 »

  1.   

    哦 错了 。 是  select 名字 from 表  ,只有一列记录。:)
      

  2.   

    var s :array of integer;//设为integer
    //=====================================
    query1.sql.clear;
    query1.sql.add(select name from tbl);
    query1.close;
    query1.open;
    query1.first;
    setlength(s,query1.recordcount);
    for i:=0 to query1.recordcount-1 do
    begin
     s[i]:=query1.fieldbyname('name').asinteger;
     query1.next;
    end;
      

  3.   

    谢谢     jinjazz(我是jin)    :)祝好人一生平安!query1.first;
    setlength(s,query1.recordcount);
    for i:=0 to 9 do
    begin
       if i>=query1.recordcount then
      s[i]:=''
       else
      s[i]:=query1.fieldbyname('name').asstring;
      query1.next;
      showmessage(s[i]);
    我根据你的改了一下,意思是i大于等于query1.recordcount的时候就自动S[i]='' 可是总是报错,应该怎么该呀?:)
      

  4.   

    你为什么要用for i:= 0 to 9 呢?而且你的少了end啊。
    你的s[]为整数类型的。。但是你用asstring。似乎不太妥啊。
    改成:if i>=query1.recordcount then s[i] := 0   
         else
         s[i] := query1.fieldbyname('name').asinteger;
         .....
         ....