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

📄 register.pas

📁 用Delphi开发的医院管理系统
💻 PAS
字号:
unit register;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls, DB, DBTables, ADODB,login, Grids, DBGrids;

type
  TForm2 = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    TabSheet3: TTabSheet;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Edit9: TEdit;
    Edit10: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    ComboBox2: TComboBox;
    ComboBox1: TComboBox;
    ComboBox4: TComboBox;
    ComboBox3: TComboBox;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    ADOQuery1: TADOQuery;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    Button5: TButton;
    Label16: TLabel;
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;

implementation
{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);
  var
    sql:string;
  begin
    if (combobox1.Text='')or(edit1.Text='')or(combobox1.text='')or(edit2.Text='')or(edit3.Text='')or(edit4.Text='')or(edit5.Text='')then
      begin
        MessageDlg('请输入所有基本资料!',mtWarning,[mbOk],0);
        exit;
      end;
    ADOQuery1:= TADOQuery.Create(nil);
    ADOQuery1.Connection:=form1.ADOConnection1;
    sql:='Insert into patient(IDType,patientID,name,gender,age,patientNO,company)';
    sql:=sql+'values(:IDType,:patientID,:name,:gender,:age,:patientNo,:company)';
    ADOQuery1.SQL.add(sql);
    showmessage('证件种类:'+combobox1.text+' 证件编号:'+edit1.text+' 姓名:'+edit2.Text+' 性别:'+combobox1.Text+' 年龄:'+edit3.Text+' 工号:'+edit4.Text+' 单位:'+edit5.Text);
    with ADOQuery1.Parameters do
      begin
        ParamByName('IDType').Value :=combobox1.ItemIndex;
        ParamByName('patientID').Value := Trim(edit1.Text);
        ParamByName('Name').Value := Trim(Edit2.Text);
        ParamByName('gender').Value := combobox2.ItemIndex;
        ParamByName('age').Value := Trim(edit3.Text);
        ParamByName('patientNo').Value := Trim(edit4.Text);
        ParamByName('company').Value := trim(Edit5.Text);
      end;
    try
      ADOQuery1.ExecSQL;
    except
      ADOQUERY1.Close;
      form1.ADOConnection1.close;
      MessageDlg('数据库连接失败!请检查数据库连接!',mtWarning,[mbOk],0);
      abort;
    end;
    ADOQUERY1.Close;
    form1.ADOConnection1.close;
    ShowMessage('数据存入数据库成功。');
    edit1.Clear;
    edit2.Clear;
    combobox1.ItemIndex:=-1;
    combobox2.ItemIndex:=-1;
    edit3.Clear;
    edit4.Clear;
    edit5.Clear;
    edit6.Clear;
    combobox1.SetFocus;
  end;

procedure TForm2.Button2Click(Sender: TObject);
  begin
    form1.ADOConnection1.close;
    adoquery1.close;
    datasource1.free;
    hide;
    Form1.Show;
end;

procedure TForm2.Button3Click(Sender: TObject);
  var
    sql:string;
  begin
    if edit6.Text=''then
      begin
        MessageDlg('请输入要查找的证件编号!',mtWarning,[mbOk],0);
        form1.ADOConnection1.Close;
        abort;
      end;
    ADOQuery1:= TADOQuery.Create(nil);
    ADOQuery1.Connection:=form1.ADOConnection1;
    sql:=trim(edit6.text);
    sql:='select * from patient where patientID='+''''+sql+'''';
    ADOQuery1.SQL.add(sql);
    try
      ADOQuery1.Open;
    except
      ADOQUERY1.Close;
      form1.ADOConnection1.Close;
      messageDlg('该证件编号不存在!请确认输入正确!',mtWarning,[mbOk],0);
      edit6.SelectAll;
      combobox4.ItemIndex:=-1;
      edit7.Clear;
      combobox3.ItemIndex:=-1;
      edit8.Clear;
      edit9.Clear;
      edit10.Clear;
    end;
    with ADOQuery1.Fields do
      begin
        combobox3.ItemIndex:=strtoint(ADOQuery1.fieldByName('IDType').Value);
        Edit7.Text:=ADOQuery1.fieldByName('name').Value;
        combobox4.ItemIndex:=strtoint(ADOQuery1.fieldByName('gender').Value);
        edit8.Text:=ADOQuery1.fieldByName('age').Value;
        edit9.Text:=ADOQuery1.fieldByName('patientNo').Value;
        Edit10.Text:=ADOQuery1.fieldByName('company').Value;
    end;
    ADOQUERY1.close;
    form1.ADOConnection1.Close;
    edit6.SetFocus;
  end;
procedure TForm2.Button4Click(Sender: TObject);
  var
    sql:string;
  begin
    if (combobox3.Text='')or(edit6.Text='')or(combobox4.text='')or(edit7.Text='')or(edit8.Text='')or(edit9.Text='')or(edit10.Text='')then
      begin
        MessageDlg('请输入所有基本资料!',mtWarning,[mbOk],0);
        exit;
      end;
    showmessage('证件种类:'+combobox3.text+' 证件编号:'+edit6.text+' 姓名:'+edit7.Text+' 性别:'+combobox4.Text+' 年龄:'+edit8.Text+' 工号:'+edit9.Text+' 单位:'+edit10.Text);
    ADOQuery1:= TADOQuery.Create(nil);
    ADOQuery1.Connection:=form1.ADOConnection1;
    sql:='Update patient ';
    sql:=sql+'set name=:name,gender=:gender,age=:age,patientNo=:patientNo,company=:company where patientID=:patientID';
    ADOQuery1.SQL.Add(sql);
    with ADOQuery1.Parameters do
      begin
        ParamByName('name').Value := Trim(Edit7.Text);
        ParamByName('gender').Value :=inttostr(combobox4.ItemIndex);
        ParamByName('age').Value := Trim(edit8.Text);
        ParamByName('patientNo').Value := Trim(edit9.Text);
        ParamByName('company').Value := trim(Edit10.Text);
        ParamByName('patientID').Value := trim(edit6.Text);
     end;
    try
      ADOQuery1.ExecSQL;
    except
      ADOQUERY1.close;
      form1.ADOConnection1.close;
      MessageDlg('证件类型和证件号码不可修改!更新失败原因:证件号码不存在或不能连接数据库!',mtWarning,[mbOk],0);
      abort;
    end;
    ADOQUERY1.Close;
    form1.ADOConnection1.close;
    ShowMessage('数据库更新成功。');
    edit7.Clear;
    combobox3.ItemIndex:=-1;
    combobox4.ItemIndex:=-1;
    edit8.Clear;
    edit9.Clear;
    edit10.Clear;
    edit6.SelectAll;
  end;

procedure TForm2.Button5Click(Sender: TObject);
  begin
    datasource1.Enabled:=true;
    with adoquery1 do
      begin
        sql.Clear;
        sql.add('select * from patient');
        open;
        datasource1.DataSet:=adoquery1;
        dbgrid1.DataSource:= datasource1;
      end;
      dbgrid1.SetFocus;
  end;
end.

⌨️ 快捷键说明

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