Delphi5+SqlServer实现会员数据增删改查

文章目录

    • 效果图
    • 增加
    • 删除
    • 查找
    • 查看全部
    • 修改
      • [步骤 1: 创建新的Form](#步骤 1: 创建新的Form)
      • [步骤 2: 设计新Form](#步骤 2: 设计新Form)
      • [步骤 3: 传递数据到新Form](#步骤 3: 传递数据到新Form)
      • [步骤 4: 在新Form中显示数据](#步骤 4: 在新Form中显示数据)
      • [步骤 5: 编辑和保存数据](#步骤 5: 编辑和保存数据)
      • [步骤 6: 关闭新Form](#步骤 6: 关闭新Form)
    • 完整代码

效果图

Delphi+SqlServer+增删改查

增加

Delphi5+SqlServer实现会员数据插入

删除

新建一个Querry控件,用于delete语句。

d 复制代码
{点击 删除}
procedure TForm1.btn3Click(Sender: TObject);
begin
  qry4.close;
  qry4.Parameters.ParamByName('name').value:=edt5.text;
  qry4.execsql;
  //展示删除后结果
  qry1.Close;
  qry1.Open;    //用于执行查询并返回结果
end;

查找

s 复制代码
{点击 查找}
procedure TForm1.btn2Click(Sender: TObject);
begin
  qry3.close;
  qry3.Parameters.ParamByName('name').value:=edt5.text;
  ds1.DataSet:=qry3;   //将查找的结果展示
  qry3.Open;
end;

查看全部

s 复制代码
{点击 查看全部}
procedure TForm1.btn5Click(Sender: TObject);
begin
  ds1.dataset:=qry1;  //select * from huiyuan;
end;

修改

实现一个修改功能,其中点击"修改"按钮后,将原始内容展示在一个新的Form上,并在修改内容后保存,通常涉及以下几个步骤:

  1. 创建新的Form:首先,你需要在Delphi IDE中创建一个新的Form,用于显示和编辑数据。
  2. 传递数据到新Form:当点击"修改"按钮时,你需要将当前选中的数据(例如,从数据库查询结果中选择的记录)传递给新Form。
  3. 在新Form中显示数据:在新Form中,根据传递的数据,设置相应的控件(如TEdit, TComboBox等)的值。
  4. 编辑数据:用户在新Form中编辑数据。
  5. 保存数据:编辑完成后,用户点击"保存"按钮,将数据更新回数据库。
  6. 关闭新Form:保存数据后,关闭新Form并返回到主Form。

步骤 1: 创建新的Form

在Delphi IDE中,右键点击项目,选择"Add New" -> "Form...",然后命名并创建新的Form(例如TfrmEditData)。

步骤 2: 设计新Form

在新Form上放置必要的控件,如TEdit(用于文本输入)、TButton(用于保存和关闭)等。

步骤 3: 传递数据到新Form

在主Form的"修改"按钮点击事件中,你需要编写代码来实例化新Form,并传递数据。例如,如果你正在使用一个TDataSet(如TADOQuery)来管理数据,你可以这样做:

delphi 复制代码
{选中某行进行 修改}
procedure TForm1.btn4Click(Sender: TObject);
var
  form2:TForm2;
begin
  if not qry1.Eof and not qry1.Bof then
  begin
    form2 := TForm2.Create(Self);
    form2.CurrentID := qry1.FieldByName('id').AsInteger; // 设置CurrentID
    ......
    form2.ShowModal; // 显示模态Form,等待用户操作完成
    form2.Free; // 如果使用Show,则同上
  end;
end;

在新Form中设置CurrentID为公共属性,方便两个form之间传递主键id。

j 复制代码
public
  { Public declarations }
  CurrentID: Integer; // 公开属性 

步骤 4: 在新Form中显示数据

delphi 复制代码
//显示选中的数据
with Form2 do
begin
  edt1.Text:=Form1.qry1.FieldByName('name').AsString;
  edt2.Text:=Form1.qry1.FieldByName('rank').AsString;
  edt3.Text:=IntToStr(Form1.qry1.FieldByName('reward').AsInteger);
  edt4.Text:=IntToStr(Form1.qry1.FieldByName('goldcoin').AsInteger);
end;

步骤 5: 编辑和保存数据

在新Form上,添加"保存"和"关闭"按钮,并为它们编写事件处理程序。在"保存"按钮的事件处理程序中,你可以使用TADOQuery(或任何你正在使用的数据库访问组件)来更新数据库中的记录。

delphi 复制代码
{点击 保存}
procedure TForm2.btn4Click(Sender: TObject);
begin
  qry1.Parameters.ParamByName('name').Value := edt1.Text;
  qry1.Parameters.ParamByName('rank').Value := edt2.Text;
  qry1.Parameters.ParamByName('reward').Value := StrToInt(edt3.Text);
  qry1.Parameters.ParamByName('goldcoin').Value := StrToInt(edt4.Text);
  qry1.Parameters.ParamByName('id').Value := CurrentID; // 你需要知道当前记录的ID
  qry1.ExecSQL; // 或使用其他方法来执行更新
  // 提示用户保存成功,并关闭Form  
  ShowMessage('数据保存成功!');
  Close;
  //刷新
  form1.qry1.close;
  form1.qry1.open;
end;

步骤 6: 关闭新Form

在"关闭"按钮(或Form的OnClose事件)的事件处理程序中,你可以简单地调用Close方法来关闭Form。

完整代码

代码在这。

相关推荐
CoderIsArt33 分钟前
Redis的三种模式:主从模式,哨兵与集群模式
数据库·redis·缓存
师太,答应老衲吧3 小时前
SQL实战训练之,力扣:2020. 无流量的帐户数(递归)
数据库·sql·leetcode
Channing Lewis4 小时前
salesforce case可以新建一个roll up 字段,统计出这个case下的email数量吗
数据库·salesforce
毕业设计制作和分享5 小时前
ssm《数据库系统原理》课程平台的设计与实现+vue
前端·数据库·vue.js·oracle·mybatis
ketil275 小时前
Redis - String 字符串
数据库·redis·缓存
Hsu_kk6 小时前
MySQL 批量删除海量数据的几种方法
数据库·mysql
编程学无止境6 小时前
第02章 MySQL环境搭建
数据库·mysql
knight-n6 小时前
MYSQL库的操作
数据库·mysql
包饭厅咸鱼7 小时前
QML----复制指定下标的ListModel数据
开发语言·数据库
生命几十年3万天7 小时前
redis时间优化
数据库·redis·缓存