程序流程是:
try
StoredProc2.ProcedureName:='sf_User_Insert;1';//指定相关的存储过程名
StoredProc2.Parameters.Refresh; //刷新并传递参数
StoredProc2.Parameters.ParamByName('@MagCard_ID').Value:=EdiCard.Text;
StoredProc2.Parameters.ParamByName('@User_Name').Value:=Edit1.Text;




StoredProc2.ExecProc;//执行存储过程
StoredProc2.Close;//-----------------------------------------------------------------
        //打印代码略
//------------------------
except
  StoredProc2.Parameters.Clear;;//清除存储过程参数
  StoredProc2.Close;
  MessageDlg('数据更新失败,请重新输入', mtWarning, [mbOK], 0);
end;
finally
      EdiCard.Clear;  //清理相关的参数



      FloatEdit6.Value:=0;
      StoredProc2.Parameters.Clear;//清除存储过程参数
    end;
上面代码是放在按钮事件里的.可以看出每次执行后相关的参数就被清除了,
再点击按钮必须得重新输入参数才可以.
问题是在快速操作时,随机的就会有一条记录被insert两条一模一样的.不知为什么?