📄 studentinfo.~pas
字号:
unit studentinfo;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, Buttons, DB, DBTables;
type
TStudentInfoForm = class(TForm)
GroupBox1: TGroupBox;
GroupBox2: TGroupBox;
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
Label6: TLabel;
Edit6: TEdit;
Label7: TLabel;
ComboBox1: TComboBox;
Label8: TLabel;
MaskEdit1: TMaskEdit;
Label9: TLabel;
Edit7: TEdit;
Label10: TLabel;
Edit8: TEdit;
Label11: TLabel;
ComboBox2: TComboBox;
Label12: TLabel;
Label13: TLabel;
MaskEdit2: TMaskEdit;
Label14: TLabel;
Edit9: TEdit;
Label15: TLabel;
Edit10: TEdit;
Label16: TLabel;
Edit11: TEdit;
GroupBox3: TGroupBox;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Database1: TDatabase;
Edit12: TEdit;
procedure BitBtn2Click(Sender: TObject);
procedure Database1Login(Database: TDatabase; LoginParams: TStrings);
procedure FormActivate(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure RadioButton2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure initiate;
end;
var
StudentInfoForm: TStudentInfoForm;
implementation
uses main;
{$R *.dfm}
procedure TStudentInfoForm.BitBtn2Click(Sender: TObject);
begin
database1.Close;
Close;
end;
procedure TStudentInfoForm.Database1Login(Database: TDatabase;
LoginParams: TStrings);
begin
loginparams.Clear;
loginparams.add('user_name=administator');
loginparams.Add('password=650124');
end;
procedure TStudentInfoForm.initiate;
begin
Edit1.Text:='';
Edit2.Text:='';
Edit7.Text:='';
Edit8.Text:='0';
Edit9.Text:='';
Edit10.Text:='';
Edit11.Text:='';
edit12.text:='';
maskedit1.text:='';
maskedit2.text:='';
Combobox1.text:='';
Combobox2.text:='';
Edit3.Text:='';
Edit4.Text:='';
Edit5.Text:='';
Edit6.Text:='';
end;
procedure TStudentInfoForm.FormActivate(Sender: TObject);
var
query1:TQuery;
begin
initiate;
edit1.setfocus;
query1:=TQuery.Create(self);
query1.DatabaseName:='student';
query1.close;
query1.SQL.clear;
query1.sql.add('select * from speciality');
query1.Params.Clear;
query1.Open;
combobox2.Items.Clear;
while not query1.Eof do
begin
combobox2.Items.add(query1.fieldbyname('name').asstring);
query1.Next;
end;
query1.close;
radiobutton1.Checked:=true;
end;
procedure TStudentInfoForm.Edit1Exit(Sender: TObject);
var
query1:TQuery;
begin
if edit1.Text<>'' then
begin
query1:=TQuery.Create(self);
query1.DatabaseName:='student';
query1.Close;
query1.SQL.clear;
query1.SQL.add('select * from student where number=:s0');
query1.Params.Clear;
query1.Params.CreateParam(ftstring,'s0',ptinput);
query1.Params[0].Value:=edit1.text;
query1.open;
if (not query1.IsEmpty) and (not radiobutton2.Checked) then
begin
Edit2.text:=query1.fieldByname('name').asstring;
ComboBox1.text:=query1.fieldByname('sex').asstring;
maskedit1.text:=DateToStr(query1.fieldByname('birthday').asDatetime);
Edit7.text:=query1.fieldByname('id').asstring;
Edit8.text:=IntToStr(query1.fieldByname('score').asInteger);
ComboBox2.text:=query1.fieldByname('speciality').asstring;
Edit9.text:=query1.fieldByname('class').asstring;
Maskedit2.text:=DateToStr(query1.fieldByname('registerdate').asDatetime);
Edit10.text:=query1.fieldByname('dorm').asstring;
Edit11.text:=query1.fieldByname('dorm_phone').asstring;
Edit12.text:=query1.fieldByname('note').asstring;
Edit3.text:=query1.fieldByname('parents').asstring;
Edit4.text:=query1.fieldByname('address').asstring;
Edit5.text:=query1.fieldByname('postcode').asstring;
Edit6.text:=query1.fieldByname('phone').asstring;
end
else if (not query1.IsEmpty) and radiobutton2.Checked then
begin
Application.MessageBox('学号重复,无法增加,请检查!','提示信息',mb_ok);
Edit1.setfocus;
end
else if query1.IsEmpty and (not radiobutton2.checked) then
begin
Application.MessageBox('您输入的学号错误,请检查!','提示信息',mb_ok);
Edit1.setfocus;
end
else
Edit2.setfocus;
end;
end;
procedure TStudentInfoForm.BitBtn1Click(Sender: TObject);
var
Query1:TQuery;
begin
query1:=TQuery.Create(self);
query1.DatabaseName:='student';
query1.close;
query1.sql.Clear;
if radiobutton1.Checked then
begin
query1.SQL.Add('update student set name=:s0,address=:s1,postcode=:s2,phone=:s3,parents=:s4,sex=:s5,birthday=:s6,id=:s7,score=:s8,speciality=:s9,class=:s10,registerdate=:s11, dorm=:s12, dorm_phone=:s13,note=:s14,opera=:s15,stamp=:s16 where number=:s17');
query1.Params.clear;
query1.Params.CreateParam(ftstring,'s0',ptinput);
query1.Params[0].Value:=edit2.text;
query1.Params.CreateParam(ftstring,'s1',ptinput);
query1.Params[1].Value:=edit4.text;
query1.Params.CreateParam(ftstring,'s2',ptinput);
query1.Params[2].Value:=edit5.text;
query1.Params.CreateParam(ftstring,'s3',ptinput);
query1.Params[3].Value:=edit6.text;
query1.Params.CreateParam(ftstring,'s4',ptinput);
query1.Params[4].Value:=edit3.text;
query1.Params.CreateParam(ftstring,'s5',ptinput);
query1.Params[5].Value:=combobox1.text;
query1.Params.CreateParam(ftDatetime,'s6',ptinput);
query1.Params[6].Value:=StrToDate(maskedit1.text);
query1.Params.CreateParam(ftstring,'s7',ptinput);
query1.Params[7].Value:=edit7.text;
query1.Params.CreateParam(ftinteger,'s8',ptinput);
query1.Params[8].Value:=StrToInt(edit8.text);
query1.Params.CreateParam(ftstring,'s9',ptinput);
query1.Params[9].Value:=Combobox2.text;
query1.Params.CreateParam(ftstring,'s10',ptinput);
query1.Params[10].Value:=edit9.text;
query1.Params.CreateParam(ftdatetime,'s11',ptinput);
query1.Params[11].Value:=StrToDate(maskedit2.text);
query1.Params.CreateParam(ftstring,'s12',ptinput);
query1.Params[12].Value:=edit10.text;
query1.Params.CreateParam(ftstring,'s13',ptinput);
query1.Params[13].Value:=edit11.text;
query1.Params.CreateParam(ftstring,'s14',ptinput);
query1.Params[14].Value:=edit12.text;
query1.Params.CreateParam(ftstring,'s15',ptinput);
query1.Params[15].Value:=username;
query1.Params.CreateParam(ftdatetime,'s16',ptinput);
query1.Params[16].Value:=date();
query1.Params.CreateParam(ftstring,'s17',ptinput);
query1.Params[17].Value:=edit1.text;
end
else if radiobutton2.Checked then
begin
query1.SQL.add('insert into student values(:s0,:s1,:s2,:s3,:s4,:s5,:s6,:s7,:s8,:s9,:s10,:s11,:s12,:s13,:s14,:s15,:s16,:s17)');
query1.Params.clear;
query1.Params.CreateParam(ftstring,'s0',ptinput);
query1.Params[0].Value:=edit1.text;
query1.Params.CreateParam(ftstring,'s1',ptinput);
query1.Params[1].Value:=edit2.text;
query1.Params.CreateParam(ftstring,'s2',ptinput);
query1.Params[2].Value:=edit4.text;
query1.Params.CreateParam(ftstring,'s3',ptinput);
query1.Params[3].Value:=edit5.text;
query1.Params.CreateParam(ftstring,'s4',ptinput);
query1.Params[4].Value:=edit6.text;
query1.Params.CreateParam(ftstring,'s5',ptinput);
query1.Params[5].Value:=edit3.text;
query1.Params.CreateParam(ftstring,'s6',ptinput);
query1.Params[6].Value:=combobox1.text;
query1.Params.CreateParam(ftDatetime,'s7',ptinput);
query1.Params[7].Value:=StrToDate(maskedit1.text);
query1.Params.CreateParam(ftstring,'s8',ptinput);
query1.Params[8].Value:=edit7.text;
query1.Params.CreateParam(ftinteger,'s9',ptinput);
query1.Params[9].Value:=StrToInt(edit8.text);
query1.Params.CreateParam(ftstring,'s10',ptinput);
query1.Params[10].Value:=Combobox2.text;
query1.Params.CreateParam(ftstring,'s11',ptinput);
query1.Params[11].Value:=edit9.text;
query1.Params.CreateParam(ftdatetime,'s12',ptinput);
query1.Params[12].Value:=StrToDate(maskedit2.text);
query1.Params.CreateParam(ftstring,'s13',ptinput);
query1.Params[13].Value:=edit10.text;
query1.Params.CreateParam(ftstring,'s14',ptinput);
query1.Params[14].Value:=edit11.text;
query1.Params.CreateParam(ftstring,'s15',ptinput);
query1.Params[15].Value:=edit12.text;
query1.Params.CreateParam(ftstring,'s16',ptinput);
query1.Params[16].Value:=username;
query1.Params.CreateParam(ftdatetime,'s17',ptinput);
query1.Params[17].Value:=date();
end
else
begin
query1.sql.add('delete from student where number=:s0');
query1.Params.clear;
query1.Params.CreateParam(ftstring,'s0',ptinput);
query1.Params[0].Value:=edit1.text;
end;
query1.Prepare;
query1.ExecSQL;
initiate;
edit1.SetFocus;
query1.Close;
end;
procedure TStudentInfoForm.RadioButton2Click(Sender: TObject);
begin
Edit1.SetFocus;
initiate;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -