📄 unit18.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 + -