procedure TfrmDictionary.btnDictdeletClick(Sender: TObject);
var
  Mysp:TADOStoredProc;
begin
  gbDictEdit.Visible := false ;
 MySp := TadoStoredProc.Create( Application );
  with MySp do
  try
    begin
      Connection := Adocon;
      ProcedureName := 'sql..sp_sys_dict_set';
      Parameters.CreateParameter('@operator_no', ftInteger, pdInput, 4, CommonInfo.OperatorNo);
      Parameters.CreateParameter('@op_station', ftstring, pdInput, 12, CommonInfo.MAC);
      Parameters.CreateParameter('@action', ftInteger, pdInput, 12, 3);
      Parameters.CreateParameter('@dict_entry', ftInteger, pdInput, 4, cmbDict.itemindex);
      Parameters.CreateParameter('@access_level',  ftInteger, pdInput, 4, null);
      Parameters.CreateParameter('@subentry', ftInteger, pdInput, 4,  strtoint(edtDictCode.text));
      Parameters.CreateParameter('@dict_prompt', ftstring, pdInput, 255, '');
      Parameters.CreateParameter('@error_info', ftString, pdOutput, 255, '');
      ExecProc;
      if Parameters.ParamByName('@error_info').Value <> '' then
      begin
        ErrorFrm(Parameters.paramByName('@error_info').Value,1);
      end
      else
      begin
        MessageDlg( '删除成功!' , mtInformation, [mbOK], 0 );
      end;
  end;
  except
    MySp.free;
  end;
  MySp.free;
  end;
数据库表如下:dict_entry     subentry     access_level     dict_prompt
                1              1              0                正常
                1              2              0                冻结
                2              1              0                系统管理员
                2              2              0              普通管理员存储过程参数如下:
@operator_no int
@op_station char(12)
@action int
@dict_entry int
@subentry int
@access_level int
@dict_prompt varchar(255)
@error_info varchar(600)  
如何删除一个数据字典子项名称,参数怎么传!  “ @action int”  中action=3表示删除

解决方案 »

  1.   

    不是的,请你帮我看看里面参数有没有传错!?
    我想删除一条记录,不知道怎么删除!参数怎么传,是不是只要把dict_prompt传空值就行了?各位帮帮我!谢谢大家了!
      

  2.   

    都不知道你的存储过程是怎么写的,如何知道参数是否传正确?按你的意思@action =3 就表示删除,代码已经达到了阿-缺省对@action的赋值就是3
      

  3.   

    firetoucher(风焱) 可以帮我再看看吗?是不是要在哪个地方加个判断什么的?!
      

  4.   

    firetoucher(风焱) 整型数据类型传空值是怎么传的(整型空值的符号是什么?)
      

  5.   

    ljmanage(过客) 你帮帮我好不好啊 ?我是今年刚毕业的,刚开始学delphi!
    可以给用存储过程删除一条记录的例子吗?谢谢您了!
      

  6.   

    madyak(无天) 如何删除一条记录,我上面的那段程序不能实现删除一条记录的功能!帮我看看!
    整型传空有什么