77范文网 - 专业文章范例文档资料分享平台

台州电大陈元的数据库应用程序设计离线作业(8)

来源:网络收集 时间:2019-06-11 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

代码: unit Unit1;

interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, DB, ADODB, ComCtrls, StdCtrls, ToolWin, ImgList; type

TFormTable = class(TForm)

ADOConnection1: TADOConnection; DataSource1: TDataSource; DBGrid1: TDBGrid; ToolBar1: TToolBar; TBAdd: TToolButton; Editname: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel;

Editaddress: TEdit; Label4: TLabel; Editid: TEdit; Label5: TLabel; Label6: TLabel;

ComboBoxsex: TComboBox; DateBirthday: TDateTimePicker; TBUpdate: TToolButton; TBDelete: TToolButton; TBSelect: TToolButton; TBCommit: TToolButton; LabelMode: TLabel;

ToolButton6: TToolButton; Label8: TLabel;

ADOQuery1: TADOQuery; DataSource2: TDataSource; ADOTable1: TADOTable; ImageList1: TImageList;

procedure TBAddClick(Sender: TObject); procedure TBUpdateClick(Sender: TObject); procedure TBDeleteClick(Sender: TObject); procedure TBSelectClick(Sender: TObject); procedure FormPaint(Sender: TObject); procedure TBCommitClick(Sender: TObject); procedure DBGrid1DblClick(Sender: TObject); private

public

{ Public declarations } end; var

FormTable: TFormTable;

TBStatus : integer; //模式类型,0-查询,1-新增,2-修改,3-删除

SelMode : integer; //第一次按查询按钮进入查询模式--1,再按一次执行查询--2,其他情况下为--0

implementation

{$R *.dfm}

procedure TFormTable.TBAddClick(Sender: TObject); var maxid : integer; var date : string; begin

TBStatus := 1;

Editid.Enabled := false; Editname.Enabled := true; Comboboxsex.Enabled := true; DateBirthday.Enabled := true; Editaddress.Enabled := true; Editid.Text := ''; Editname.Text := ''; SelMode := 0;

LabelMode.Caption := '新增模式'; DBGrid1.DataSource := DataSource1;

date := FormatDateTime('yymm', now); With FormTable.ADOQuery1 do begin

ADOQuery1.Close; ADOQuery1.SQL.Clear;

ADOQuery1.SQL.Add('select max(substring(Id,6,3)) maxid from Students where substring(Id,2,4)=' + date); ADOQuery1.Open;

if (ADOQuery1.RecordCount = 0) then Editid.Text := 'S' + date + '001' else

begin if (ADOQuery1.FieldByName('maxid').Text = '') or (ADOQuery1.FieldByName('maxid').Text = 'NULL') then Editid.Text := 'S' + date + '001' else begin

maxid := StrToInt(ADOQuery1.FieldByName('maxid').Text); maxid := maxid + 1;

Editid.Text := 'S' + date + StringOfChar('0', 3-length(IntToStr(maxid))) + IntToStr(maxid); end;

end; end; end;

procedure TFormTable.TBUpdateClick(Sender: TObject); begin

TBStatus := 2;

Editid.Enabled := false; Editname.Enabled := true;

Comboboxsex.Enabled := true; DateBirthday.Enabled := true; Editaddress.Enabled := true; Editid.Text := ''; Editname.Text := ''; SelMode := 0;

LabelMode.Caption := '修改模式'; DBGrid1.DataSource := DataSource1; end;

procedure TFormTable.TBDeleteClick(Sender: TObject); begin

TBStatus := 3;

Editid.Enabled := false; Editname.Enabled := false; Comboboxsex.Enabled := false; DateBirthday.Enabled := false; Editaddress.Enabled := false; Editid.Text := ''; Editname.Text := ''; SelMode := 0;

LabelMode.Caption := '删除模式'; DBGrid1.DataSource := DataSource1; end;

procedure TFormTable.TBSelectClick(Sender: TObject); var id,ename,address:string; begin

if SelMode = 0 then begin

TBStatus := 0;

Editid.Enabled := true; Editname.Enabled := true; Comboboxsex.Enabled := true; DateBirthday.Enabled := true; Editaddress.Enabled := true; Editid.Text := ''; Editname.Text := ''; SelMode := 1;

LabelMode.Caption := '查询模式'; DBGrid1.DataSource := DataSource2; end

else if SelMode = 1 then begin

if Editid.Text = '' then id := 'null' else

id := ''''+Editid.Text+'''';

if Editname.Text = '' then ename := 'null' else

ename := ''''+Editname.Text+'''';

if Editaddress.Text = '' then address := 'null' else

address := ''''+Editaddress.Text+'''';

with ADOQuery1 do begin

ADOQuery1.Close; ADOQuery1.SQL.Clear;

ADOQuery1.SQL.Add('select Id, Name, Sex, Birthday, Address from Students' + ' where Id = isnull('+id+',Id)'+

' and Name = isnull('+ename+',Name)'+ ' and Sex = '+''''+Comboboxsex.Text+''''+

' and Birthday = '+''''+DateToStr(DateBirthday.Date)+''''+ ' and Address = isnull('+address+',Address)'); ADOQuery1.Open;

end; end; end;

procedure TFormTable.FormPaint(Sender: TObject); begin

//默认为查询模式,此模式下学号可以输入,其他模式下不可以输入 TBStatus := 0;

Editid.Enabled := true; Editid.Text := ''; SelMode := 1;

DBGrid1.DataSource := DataSource2; end;

procedure TFormTable.TBCommitClick(Sender: TObject);

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库台州电大陈元的数据库应用程序设计离线作业(8)在线全文阅读。

台州电大陈元的数据库应用程序设计离线作业(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/656396.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: