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

📄 unit10.~pas

📁 sql server 2000 数据库与应用
💻 ~PAS
字号:
unit Unit10;

interface

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

type
  TForm10 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Button1: TButton;
    Edit1: TEdit;
    Button2: TButton;
    Button3: TButton;
    DBGrid1: TDBGrid;
    ADOQuery1: TADOQuery;
    ADOConnection1: TADOConnection;
    DataSource1: TDataSource;
    ADOQuery2: TADOQuery;
    Label4: TLabel;
    Edit2: TEdit;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Label9: TLabel;
    Button4: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure FormActivate(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure Button3Click(Sender: TObject);
    procedure DBGrid1KeyUp(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form10: TForm10;
  procedure initialize;
  procedure getonecourse;
implementation

{$R *.dfm}

procedure initialize;
begin
  with form10 do
  begin
    edit1.Text:='';
    edit2.Text:='';
    edit3.Text:='';
    edit4.Text:='';
    edit5.Text:='';
    edit6.Text:='';
    edit7.Text:='';
    edit8.Text:='';
  end;
end;

procedure getonecourse;
begin
  with form10 do
  begin
    if not ADOQuery2.fieldbyname('课程编号').IsNull then
      edit1.Text:=trim(ADOQuery2.fieldbyname('课程编号').Value)
    else
      edit1.Text:='';
    if not ADOQuery2.fieldbyname('课程名称').IsNull then
      edit2.Text:=trim(ADOQuery2.fieldbyname('课程名称').Value)
    else
      edit2.Text:='';
    if not ADOQuery2.fieldbyname('学分').IsNull then
      edit3.Text:=trim(ADOQuery2.fieldbyname('学分').Value)
    else
      edit3.Text:='';
    if not ADOQuery2.fieldbyname('学时').IsNull then
      edit4.Text:=trim(ADOQuery2.fieldbyname('学时').Value)
    else
      edit4.Text:='';
    if not ADOQuery2.fieldbyname('考核类型').IsNull then
      edit5.Text:=trim(ADOQuery2.fieldbyname('考核类型').Value)
    else
      edit5.Text:='';
    if not ADOQuery2.fieldbyname('任课教师').IsNull then
      edit6.Text:=trim(ADOQuery2.fieldbyname('任课教师').Value)
    else
      edit6.Text:='';
    if not ADOQuery2.fieldbyname('系部编号').IsNull then
      edit7.Text:=trim(ADOQuery2.fieldbyname('系部编号').Value)
    else
      edit7.Text:='';
    if not ADOQuery2.fieldbyname('上课时间').IsNull then
      edit8.Text:=trim(ADOQuery2.fieldbyname('上课时间').Value)
    else
      edit8.Text:='';
  end;
end;

procedure TForm10.Button1Click(Sender: TObject);
begin
  form10.Close ;
end;

procedure TForm10.Button4Click(Sender: TObject);
begin
  initialize;
end;

procedure TForm10.FormActivate(Sender: TObject);
begin
  initialize;
  dbgrid1.DataSource.AutoEdit:=false;
  adoquery2.Close;
  adoquery2.SQL.Clear;
  adoquery2.SQL.Add('select * from 课程信息表 order by 课程编号');
  adoquery2.Open;
  edit1.ReadOnly:=True;
end;

procedure TForm10.DBGrid1CellClick(Column: TColumn);
begin
  getonecourse;
end;

procedure TForm10.Button3Click(Sender: TObject);
var
  s1: string;
begin
  if (trim(edit1.Text)='') or (trim(edit2.Text)='') then
    application.MessageBox('数据不完整!','提示',mb_ok)
  else
    try
      adoquery1.close;
      adoquery1.sql.clear;
      s1:='update 课程信息表 set 课程名称='+quotedstr(trim(edit2.Text))
        +', 学分='+trim(edit3.text)+', 学时='+trim(edit4.text)
        +', 考核类型='+quotedstr(trim(edit5.Text))
        +', 任课教师='+quotedstr(trim(edit6.Text))
        +', 系部编号='+quotedstr(trim(edit7.Text))
        +', 上课时间='+quotedstr(trim(edit8.Text))
        +' where 课程编号='+quotedstr(trim(edit1.Text));
      Adoquery1.sql.add(s1);
      Adoquery1.ExecSQL;
      adoquery2.Requery();
      application.MessageBox('课程信息修改成功!','提示',mb_ok);
    except
      on E: Exception do
        messagedlg(E.Message,mterror,[mbok],0);
    end;
end;

procedure TForm10.DBGrid1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 if (key=VK_UP) or (key=VK_DOWN) then  getonecourse;

end;

procedure TForm10.Button2Click(Sender: TObject);
var
  kcbh:string;
begin
  if (trim(edit1.Text)='') or (trim(edit2.Text)='') then
    application.MessageBox('未选择要删除的纪录!','提示',mb_ok)
  else if application.MessageBox('你确实要删除当前纪录吗?','警告!',mb_okcancel)=idok then
    begin
      kcbh:=trim(edit1.Text);
      adoquery1.close;
      adoquery1.sql.clear;
      Adoquery1.sql.add('delete from 课程信息表 where 课程编号='+quotedstr(kcbh));
      Adoquery1.ExecSQL;
      adoquery2.Requery();
      //或者使用下面的1条语句替代上面5条语句
      //adoquery2.Delete;
      application.MessageBox('课程信息删除成功!','提示',mb_ok);
    end;

end;

end.

⌨️ 快捷键说明

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