query2.sql.text := sqlstr; 把这句放在 query2.ParamByName('bh').AsString:=edit1.Text;      //后面出错的地方说的‘bh’就是这里的‘bh’ 
这句的前面.

解决方案 »

  1.   

    改后解决了部分问题
          if flag = 1 then
            sqlstr := 'insert into houseinfo values (:fh, :mj, :hx, :lx, :yz, :yj, :sb, :ljf)'
          else
          if flag = 2 then
          begin
            sqlstr := 'update houseinfo set 房号=:fh, 面积=:mj, 户型=:hx,'
                     +'类型=:lx, 月租=:yz, 押金=:yj, 设备=:sb, 垃圾费=:ljf'
                     +'where 房号=:fh';        query2.ParamByName('fh').AsString:=edit1.Text;
          end;
          query2.SQL.Text := sqlstr;现在执行插入操作没有问题了  但是执行更新修改的时候还是报同样的错