当运行到T_course.AppendRecord([course_id,edit_cname.text, form1.edit_user.text,comb_credit.text, comb_time.text,'','',memo_intro.lines,'0']);这里时出现cannot assign a TMemoStrings to TStringfield错误,是什么原因呢 ,请帮帮忙找出来procedure TForm2.Btn_submitClick(Sender: TObject);
var
locOp:TlocateOptions;
counter:integer;
course_id:String;
begin
case RdG_state.ItemIndex of
0:
begin
T_counterk.Open;
counter:=T_counterk['counter_value'];
inc(counter);
T_counterk.Edit;
T_counterk['counter_value']:=counter;
T_counterk.Post;
T_counterk.Close;
course_id:='00000'+IntTostr(counter);
course_id:=copy(course_id,length(course_id)-6,6);
course_id:=formatDateTime('yyyy',now)+course_id;
T_course.filtered:=false;
T_course.Open;
T_course.AppendRecord([course_id,edit_cname.text,
form1.edit_user.text,comb_credit.text,
comb_time.text,'','',memo_intro.lines,'0']);
end;

解决方案 »

  1.   

    问题补充:其中T_开头的都是TADOQueryl类型的
      

  2.   

    不能分配TmemoString到TstringField,应该是数据类型不对.看看你的插入的数据,和数据库中的字段类型是不是相同的
      

  3.   

    这里"memo_intro.lines"
    应该Memo控件吧,不过你没指定要插入那一行??当然出错了改成:
    memo_intro.lines[0]  //第一行
    或者:
    memo_intro.text //全部
      

  4.   

    memo_intro.lines这和你数据类型不匹配
      

  5.   

    T_course.AppendRecord([course_id,edit_cname.text, 
    form1.edit_user.text,comb_credit.text, 
    comb_time.text,'','',memo_intro.lines.Text,'0']);