你用TDBMEMO会很方便的保存数据。

解决方案 »

  1.   

    你程序怎么写的?
    ★★★★★★★★宇宙通缉令★★★★★★★★★
    1:拉登;2:hammer_shi;3:李同志;4:杀他母
    ★★★★★★★★★★★★★★★★★★★★★★知道我是谁还不快给我分?
      

  2.   

    var
      i,j, ncount: Integer;
      strreceive,s:string;
    begin
      setlength(strreceive,bufferlength);
      move(buffer^,pchar(strreceive)^,bufferlength);
      form3.memo1.Lines.Add(strreceive);
      form3.Memo1.Invalidate;
      sleep(1000);
    //以上是从设备里读取数据,以下是MEMO 数据插入到ACCESS数据库
      begin
      nCount := form3.Memo1.Lines.Count;
      with form3.Table1 do
      begin
        last;
        for i := 1 to nCount-1 do
           begin
                s := form3.Memo1.Lines.Strings[i];
              try
                append;
                FieldByName('cs_id').value := Copy(s,0,9);
                FieldByname('cq').AsString := Copy(s,13,4);
                post;
               except
                showmessage('error!');
              end;
           end;
      end;
      

  3.   

    for i := 0 to nCount-1 do
      

  4.   

    for i := 1 to nCount-1 do
    这里i:=0才对
      

  5.   

    for i := 1 to nCount-1 do
    这里i:=0才对
      

  6.   

    for i := 1 to nCount-1 do
    这里i:=0才对
      

  7.   

    var
      i,j: Integer;
      strreceive,s:string;
    begin
      setlength(strreceive,bufferlength);
      move(buffer^,pchar(strreceive)^,bufferlength);
      form3.memo1.Lines.Add(strreceive);
      form3.Memo1.Invalidate;
      sleep(1000);
    //以上是从设备里读取数据,以下是MEMO 数据插入到ACCESS数据库
      begin
      with form3.Table1 do
      begin
        last;
        edit;
        for i := 0 to form3.Memo1.Lines.Count-1 do
           begin
                s := form3.Memo1.Lines[i];
              try
                append;
                FieldByName('cs_id').asstring := Copy(s,0,9);//如果你的id是数值型的就//FieldByName('cs_id').asinteger := strtoint(Copy(s,0,9));
                FieldByname('cq').AsString := Copy(s,13,4);
                post;
               except
                showmessage('error!');
              end;
           end;
      end;
      

  8.   

    天天向上怎么只显示那么几条呢,DBGRID里没有这个属性,我好象找不到
      

  9.   

    河外孤人,请问,
      begin
        last;
        edit;
        for i := 0 to form3.Memo1.Lines.Count-1 do
     多了edit;干吗用,谢谢,
      

  10.   

    是不是需要一条语句,for i := 0 to form3.Memo1.Lines.Count-1 do
           begin
             。
           end;
    是否需要一条一条语句控制循环,使每次读取数据后,停下来,在读取,
      

  11.   

    最后一条出错为,TRANSLATE ERROR,value out of bound为什么每次最后一条,会自动加入,是空值
      

  12.   

    var
      i,j, ncount: Integer;
      strreceive,s:string;
    begin
      setlength(strreceive,bufferlength);
      move(buffer^,pchar(strreceive)^,bufferlength);
      form3.memo1.Lines.Add(strreceive);
      form3.Memo1.Invalidate;
      sleep(1000);
    //以上是从设备里读取数据,以下是MEMO 数据插入到ACCESS数据库
      begin
      nCount := form3.Memo1.Lines.Count;
      with form3.Table1 do
      begin
        last;
        for i := 1 to nCount-1 do
           begin
                s := form3.Memo1.Lines.Strings[i];
              try
                append;
                FieldByName('cs_id').value := Copy(s,0,9);
                FieldByname('cq').AsString := Copy(s,13,4);
                post;
               except
                showmessage('error!');
              end;
           end;
      end;程序里都没有错,读取最后一条,会自动增加,为什么,我没回车,奇怪了,
      

  13.   

    那你在减一行试试
    我平时不使用table
    我一般使adoquery
    那个的话好控制输出
      

  14.   

    那你在减一行试试
    我平时不使用table
    我一般使adoquery
    那个的话好控制输出
      

  15.   

    应该一样,我可以试试。,还有,我把COUNT-2,或更大,DBGRID里的数据不取最后该取的数字,而是跟上面出错一样,里面读进一些0
      

  16.   

    TRANSLATE ERROR,value out of bound为什么会超出,我不知道怎么办,
      

  17.   

    i:=0是必须的
    你调整一下access,看看是不是它的问题
      

  18.   

    i:=0是必须的
    你调整一下access,看看是不是它的问题