parameters.ParamByName和parameters.ParamValues的疑惑(请看倒数5至7行)procedure TForm1.Button1Click(Sender: TObject);
var
  v_p_name:integer;
begin
  screen.Cursor:=crSQLWait;
  v_p_name := 6633; 
  with adoquery1 do
      begin
         close;
         sql.Clear;
         sql.Add('SELECT a.servid,a.con_id,xie_yi,a.haoma,a.name,a.addr ');
         sql.Add('FROM table1 a,table2 b ');
         sql.Add('WHERE a.b_id=5 AND NOT a.con_id IS NULL ');
         sql.Add('AND a.con_id=b.con_id AND a.con_id =: v_id');
         case qu_yu.ItemIndex of //qu_yu ---- 是一个下拉框控件
           0:v_p_name := 9645;
           1:v_p_name := 10142;
           2:v_p_name := 6708;
           3:v_p_name := 7422;
           4:v_p_name := 10502;
           5:v_p_name := 6714;
           6:v_p_name := 6705;
         end;
         // 用下面两句之一都是提示v_id找不到,但是,在其他事件过程中都能正常执行,不知为什么
         parameters.ParamByName('v_id').value := v_p_name;
         //parameters.ParamValues['v_id']:= v_p_name;
         open;
         screen.Cursor:=crarrow;
      end;
end;