大家帮我看看为什么出错 
  Id:=DM1.ADOXuanChuanQuery.FieldByName('Id').AsInteger;      SQLString:='insert into ColumnName(LoginId,ColumnName,Version,Show,Act,OrderId,ParentId,Linked)';
 
这行提示 Id变量问题 :
     SQLString:=SQLString+' values('+Id+',"栏目名称",'+Ver+',"1","0",'+i+',"0","0")' ;  [Error] XuanChuanu1.pas(89): Incompatible types: 'String' and 'Integer'

解决方案 »

  1.   

    字段类型错误,如果表里是INTEGER类型,则转换成INTEGER类型,STRTOINT
      

  2.   

    Id:=DM1.ADOXuanChuanQuery.FieldByName('Id').AsInteger;
    你定义的是个string...Id:=DM1.ADOXuanChuanQuery.FieldByName('Id').AsString;
      

  3.   

    SQLString:=SQLString+' values('+   IntToStr(Id) //----
    +',"栏目名称",'+Ver+',"1","0",'+i+',"0","0")' ;
      

  4.   

    SQLString:=SQLString+' values('+Id+',"栏目名称",'+Ver+',"1","0",'+i+',"0","0")' ;
    改成
    SQLString:=SQLString+' values(Id,"栏目名称",'+Ver+',"1","0",'+i+',"0","0")' ;
      

  5.   

    id是int类型的,sqlstring是string类型
    所以ID要转换,inttostr(id)
      

  6.   

    ...IntToStr(Id) ...字符串中有数值型数据来连接当然不行了~以后只要有‘+’号连接字符串的都要看清楚了中间有没有不是字符串的数据,如果有一定要Tostr呀~
      

  7.   

    我的数据库中的LoginId是int型阿?
      

  8.   

    SQLString是你定义的string,而Id是你定义的Integer;所以下面这句会提示出错:
    SQLString:=SQLString+' values('+Id+',"栏目名称",'+Ver+',"1","0",'+i+',"0","0")' ;
    应该修改为:
    SQLString:=SQLString+' values('+IntToStr(Id)+',"栏目名称",'+Ver+',"1","0",'+i+',"0","0")' ;