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。

完整代码

代码在这。

相关推荐
夏木~1 小时前
Oracle 中什么情况下 可以使用 EXISTS 替代 IN 提高查询效率
数据库·oracle
W21551 小时前
Liunx下MySQL:表的约束
数据库·mysql
黄名富1 小时前
Redis 附加功能(二)— 自动过期、流水线与事务及Lua脚本
java·数据库·redis·lua
言、雲1 小时前
从tryLock()源码来出发,解析Redisson的重试机制和看门狗机制
java·开发语言·数据库
一个程序员_zhangzhen2 小时前
sqlserver新建用户并分配对视图的只读权限
数据库·sqlserver
zfj3212 小时前
学技术学英文:代码中的锁:悲观锁和乐观锁
数据库·乐观锁··悲观锁·竞态条件
吴冰_hogan2 小时前
MySQL InnoDB 存储引擎 Redo Log(重做日志)详解
数据库·oracle
nbsaas-boot2 小时前
探索 JSON 数据在关系型数据库中的应用:MySQL 与 SQL Server 的对比
数据库·mysql·json
cmdch20172 小时前
Mybatis加密解密查询操作(sql前),where要传入加密后的字段时遇到的问题
数据库·sql·mybatis
程序员学习随笔2 小时前
PostgreSQL技术内幕21:SysLogger日志收集器的工作原理
数据库·postgresql