熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Delphi編程 >> 正文

職員信息維護功能的實現(二)[2]

2013-11-23 17:37:21  來源: Delphi編程 
    ——此文章摘自《Delphi 數據庫開發經典案例解析》定價 特價 購買>>http://tracklinktechcn/?m_id=dangdang&a_id=A&l=&l_type= width= height= border= nosave>

    //讀入要刪除記錄的職員的姓名和職員編號
    deleteName:=editText;
    deleteNum:=dbgridFields[]AsInteger;
    //為保險起見只有職員姓名和編號都符合時才能刪除
    adocommandCommandText:=delete from 職員基本信息表
    where (內部編號=+inttostr(deleteNum)+)and(姓名=+deleteName+);
    adocommandExecute;
    //顯示刪除成功的消息
    MessageBox(刪除記錄成功!刪除MB_OK);
    labelCaption:=deleteName+的記錄已被成功刪除;
    //刷新dbgrid的數據
    adotableActive:=false;
    adotableActive:=true;
     
    end;
     
    //插入新記錄
    procedure TmainButtonClick(Sender: TObject);
     
    var
    MaxIntNum:integer;
    TotalNum:integer;
    begin
     
    adoqueryClose;
    adoquerySQLClear;
    adoquerySQLAdd(select max(內部編號) 最大編號count(內部編號) 總人數 from 職員基本信息表);
    adoqueryOpen;
    //計算數據表中職員內部編號的最大值和總人數
    //自動計算新插入的職員數據的內部編號
    MaxIntNum:=adoqueryFieldByName(最大編號)AsInteger;
    TotalNum:=adoqueryFieldByName(總人數)AsInteger;
    adoqueryClose;
    adoquerySQLClear;
    adoquerySQLAdd(select count(職員編號) 雷同編號 from 職員基本信息表
    where 職員編號=+editText+);
    adoqueryOpen;
    //判斷輸入的職員編號如果輸入的職員編號於已有的相同則提示修改
    if (adoqueryFieldByName(雷同編號)AsInteger>) then
     MessageBox(職員編號與其他職員編號雷同!Error!MB_OK)
     else
     begin
     //不允許用戶輸入空的編號和姓名如果輸入為空則提示錯誤
      if (editText=)or(editText=) then
      MessageBox(姓名和編號不能為空!Error!MB_OK)
       else
       begin
        //打開職員基本信息表插入許可
        adocommandCommandText:=set IDENTITY_insert 職員基本信息表 on;
        adocommandExecute;
        //向表中插入新記錄這裡只插入了不能為空的三項後面用update語句來對它進行更新
        adocommandCommandText:=insert into 職員基本信息表([內部編號] [職員編號]

right>[http://developcsaicn/delphi/htm>]  []  [http://developcsaicn/delphi/htm>]  


From:http://tw.wingwit.com/Article/program/Delphi/201311/24778.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.