⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit18.pas

📁 宿舍管理系统
💻 PAS
字号:
unit Unit18;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, DB, ADODB, StdCtrls, Buttons,Unit2;

type
  TForm18 = class(TForm)
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    ComboBox2: TComboBox;
    ComboBox1: TComboBox;
    GroupBox3: TGroupBox;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    ADOQuery1: TADOQuery;
    BitBtn3: TBitBtn;
    Image1: TImage;
    Memo1: TMemo;
    procedure BitBtn3Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure Edit4KeyPress(Sender: TObject; var Key: Char);
    procedure FormCreate(Sender: TObject);
    procedure Edit1Exit(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form18: TForm18;

implementation

{$R *.dfm}
                            //查询学号所对应学生的信息量
procedure TForm18.BitBtn3Click(Sender: TObject);
begin
//ADOQuery1.Connection :=DataModule2.ADOConnection1 ;
if Edit1.Text ='' then
  begin
    Messagebox(handle,'学号不能为空!','警告',MB_OK+MB_ICONWARNING);
    Exit;
  end;

ADOQuery1.Close ;                   //查询有没有这个学号
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Text :='select * from 学生信息表 where 学号='''+trim(Edit1.text)+'''';
ADOQuery1.Prepared ;
ADOQuery1.Open ;

if ADOQuery1.Eof then
  begin
    MessageBox(handle,'没有该学号的学生了!','警告',MB_OK+MB_ICONWARNING);
    Edit1.SetFocus ;
    exit;
  end;
                                    //如果有这个学号,把学号所对应的学生信息显示出来
Edit2.Text :=ADOQuery1.FieldValues['姓名'];
ComboBox2.Text :=ADOQuery1.FieldValues['性别'];
ComboBox1.Text :=ADOQuery1.FieldValues['系别'];
Edit3.Text :=ADOQuery1.FieldValues['班级'];
Edit4.Text :=ADOQuery1.FieldValues['电话'];
Edit5.Text :=ADOQuery1.FieldValues['政治面貌'];
Memo1.Text :=ADOQuery1.fieldByName('备注').asString ;
ADOQuery1.Close ;
end;

                          //提交修改
procedure TForm18.BitBtn1Click(Sender: TObject);
begin
//ADOQuery1.Connection :=DataModule2.ADOConnection1 ;
if  ComboBox2.Text ='' then
  begin
    MessageBox(handle,'性别不能为空!','警告',MB_OK+MB_ICONWARNING);
    ComboBox2.SetFocus ;
    exit;
  end;
  
if ComboBox1.Text ='' then
  begin
    MessageBox(handle,'系别不能为空!','警告',MB_OK+MB_ICONWARNING);
    ComboBox1.SetFocus ;
    exit;
  end;

ADOQuery1.Close ;              //更新学生的性别,系别,班级,政治面貌,电话和备注
ADOQuery1.SQL.Clear ;
ADOQuery1.SQL.Text :='update 学生信息表 set 性别=:A,系别=:B,班级=:C,政治面貌=:D,电话=:E,备注=:F where 学号='''+Edit1.Text+'''';
ADOQuery1.Parameters.ParamByName('A').Value :=trim(ComboBox2.Text );
ADOQuery1.Parameters.ParamByName('B').Value  :=trim(ComboBox1.Text );
ADOQuery1.Parameters.ParamByName('C').Value :=trim(Edit3.Text );
ADOQuery1.Parameters.ParamByName('D').Value  :=trim(Edit5.Text );
ADOQuery1.Parameters.ParamByName('E').Value  :=trim(Edit4.Text );
ADOQuery1.Parameters.ParamByName('F').Value  :=Memo1.Text ;
ADOQuery1.Prepared ;
try
  DataModule2.ADOConnection1.BeginTrans ;
  ADOQuery1.ExecSQL ;                             // 提交更新事务
  DataModule2.ADOConnection1.CommitTrans ;
  MessageBox(handle,'学生信息修改成功!','提示',MB_OK+MB_ICONINFORMATION);
except
  DataModule2.ADOConnection1.RollbackTrans ;             //提交失败,事务回滚
  MessageBox(handle,'学生信息修改失败!','提示',MB_OK+MB_ICONWARNING);
 end;

end;

procedure TForm18.BitBtn2Click(Sender: TObject);
begin
Close;
end;
                               //限制电话的输入字符
procedure TForm18.Edit4KeyPress(Sender: TObject; var Key: Char);
begin
if not(Key in ['0'..'9',#8]) then
  begin
     MessageBox(handle,'只能输入数字','警告',MB_OK+MB_ICONWARNING);
    Key :=#0;
  end; 
end;
                          //连接数据库
procedure TForm18.FormCreate(Sender: TObject);
begin
ADOQuery1.Connection :=DataModule2.ADOConnection1 ;
end;

procedure TForm18.Edit1Exit(Sender: TObject);
begin
if Edit1.Text ='' then
  begin                      //Edit1失去焦点时,查询学号所对应学生信息
    Edit1.SetFocus ;
    Exit;
  end;
     BitBtn3.Click;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -